bool COptimizedTexture::Save(char *filename) { FILE *fp; if(!tex_data || !pitch) { SysLog("No texture generated to save: %s\n", filename); return false; } fp=fopen(filename,"wb"); if(!fp) { SysLog("Can't create texture file: %s\n", filename); return false; } if(!Write32BitPNGWithPitch(fp, tex_data, true, texw, texh, pitch)) { fclose(fp); SysLog("Error writing data: %s\n", filename); return false; } fclose(fp); return true; }
/* Обработка одного хост-файла. Return: -1 - Этот файл никаким плагином не поддержан 0 - Плагин вернул FALSE 1 - Плагин вернул TRUE */ int FileList::ProcessOneHostFile(int Idx) { _ALGO(CleverSysLog clv(L"FileList::ProcessOneHostFile()")); int Done=-1; _ALGO(SysLog(L"call OpenPluginForFile([Idx=%d] '%s')",Idx,ListData[Idx]->strName.CPtr())); HANDLE hNewPlugin=OpenPluginForFile(&ListData[Idx]->strName,ListData[Idx]->FileAttr, OFP_COMMANDS); if (hNewPlugin && hNewPlugin!=PANEL_STOP) { PluginPanelItem *ItemList; size_t ItemNumber; _ALGO(SysLog(L"call Plugins.GetFindData")); if (CtrlObject->Plugins->GetFindData(hNewPlugin,&ItemList,&ItemNumber,OPM_TOPLEVEL)) { _ALGO(SysLog(L"call Plugins.ProcessHostFile")); Done=CtrlObject->Plugins->ProcessHostFile(hNewPlugin,ItemList,ItemNumber,OPM_TOPLEVEL); _ALGO(SysLog(L"call Plugins.FreeFindData")); CtrlObject->Plugins->FreeFindData(hNewPlugin,ItemList,ItemNumber); } _ALGO(SysLog(L"call Plugins.ClosePanel")); CtrlObject->Plugins->ClosePanel(hNewPlugin); } return Done; }
void Manager::UpdateCommit() { _MANAGER(CleverSysLog clv(L"Manager::UpdateCommit()")); _MANAGER(SysLog(L"DeletedFrame=%p, InsertedFrame=%p, ExecutedFrame=%p",DeletedFrame,InsertedFrame, ExecutedFrame)); if (ExecutedFrame) { DeleteCommit(); ExecuteCommit(); return; } int FrameIndex=IndexOf(DeletedFrame); if (-1!=FrameIndex) { ActivateFrame(FrameList[FrameIndex] = InsertedFrame); ActivatedFrame->FrameToBack=CurrentFrame; DeleteCommit(); } else { _MANAGER(SysLog(L"ERROR! DeletedFrame not found")); } }
void FileList::PluginPutFilesToNew() { _ALGO(CleverSysLog clv(L"FileList::PluginPutFilesToNew()")); //_ALGO(SysLog(L"FileName='%s'",(FileName?FileName:"(nullptr)"))); _ALGO(SysLog(L"call Plugins.OpenFilePlugin(nullptr, 0)")); HANDLE hNewPlugin=CtrlObject->Plugins->OpenFilePlugin(nullptr, 0, OFP_CREATE); if (hNewPlugin && hNewPlugin!=PANEL_STOP) { _ALGO(SysLog(L"Create: FileList TmpPanel, FileCount=%d",FileCount)); FileList TmpPanel; TmpPanel.SetPluginMode(hNewPlugin,L""); // SendOnFocus??? true??? TmpPanel.SetModalMode(TRUE); int PrevFileCount=FileCount; /* $ 12.04.2002 IS Если PluginPutFilesToAnother вернула число, отличное от 2, то нужно попробовать установить курсор на созданный файл. */ int rc=PluginPutFilesToAnother(FALSE,&TmpPanel); if (rc!=2 && FileCount==PrevFileCount+1) { int LastPos = 0; /* Место, где вычисляются координаты вновь созданного файла Позиционирование происходит на файл с максимальной датой создания файла. Посему, если какой-то злобный буратино поимел в текущем каталоге файло с датой создания поболее текущей, то корректного позиционирования не произойдет! */ FileListItem *PtrListData, *PtrLastPos = nullptr; for (int i = 0; i < FileCount; i++) { PtrListData = ListData[i]; if ((PtrListData->FileAttr & FILE_ATTRIBUTE_DIRECTORY) == 0) { if (PtrLastPos) { if (FileTimeDifference(&PtrListData->CreationTime, &PtrLastPos->CreationTime) > 0) { LastPos = i; PtrLastPos = PtrListData; } } else { LastPos = i; PtrLastPos = PtrListData; } } } if (PtrLastPos) { CurFile = LastPos; Redraw(); } } } }
bool COptimizedTexture::Create() { // create texture texw = placer.GetW(); texh = placer.GetH(); tex = hge->Texture_Create(texw, texh); if(!tex) { SysLog("Can't create target texture.\n"); return false; } // get hardware width pitch = hge->Texture_GetWidth(tex, false); // lock texture tex_data = (CColor *)hge->Texture_Lock(tex); if(!tex_data) { SysLog("Can't lock target texture.\n"); return false; } // clear texture memset(tex_data, 0, sizeof(CColor) * pitch * hge->Texture_GetHeight(tex, false)); return true; }
int load_tranmap_cfg(char *filename) { int shmid,i=0; char buff[1200]; _tranmap *tmap=NULL; char *tmpbuf = NULL; size_t shmsize; FILE *fp=NULL; memset(buff,0,sizeof(buff)); /** init commmsg **/ shmsize=MAXTRANMAP*sizeof(_tranmap); if((shmid=getshmid(5,shmsize))==-1) { SysLog(LOG_SYS_ERR,"获取交易映射区共享内存失败\n"); return -1; } SysLog(LOG_SYS_SHOW,"开始加载交易映射区共享内存配置 \n"); tmap = (_tranmap *)shmat(shmid,NULL,0); if(tmap == NULL) { SysLog(LOG_SYS_ERR,"链接交易映射区共享内存失败\n"); return -1; } fp = fopen(filename,"r"); if(fp==NULL) { SysLog(LOG_SYS_ERR,"打开文件[%s]失败[%s]\n",filename,strerror(errno)); shmdt(tmap); return -1; } while(fgets(buff,sizeof(buff),fp)!=NULL) { buff[strlen(buff)-1]='\0'; if(buff[0]=='#') { //cmsg++; continue; } if(buff[0]=='*') { strcpy(tmap->trancode,buff+1); tmap++; continue; } /** need if else **/ strcpy(tmap->trancode,strtok(buff,"^")); strcpy(tmap->tranname,strtok(NULL,"^")); strcpy(tmap->tranflow,strtok(NULL,"^")); tmap->timeout=atoi(strtok(NULL,"^")); tmap++; } shmdt(tmap); fclose(fp); SysLog(LOG_SYS_SHOW,"加载交易映射区共享内存配置成功 \n"); return 0; }
int sendprocess(long inerid,MQLONG *messlen) { FILE *fp = NULL; char tmpfilename[60]; memset(tmpfilename,0,sizeof(tmpfilename)); memset(buffer,0,sizeof(buffer)); memset(tmpbuffer,0,sizeof(tmpbuffer)); memset(headbuf,0,sizeof(headbuf)); SysLog(LOG_CHNL_SHOW,"&&&&&&&&&&&&&&&&&FILE [%s] LINE[%d] 开始处理[%ld]\n",__FILE__,__LINE__,inerid); /**get the shm **/ if((get_shm_hash(inerid,tranbuf))!=-1) { /** SysLog(LOG_CHNL_ERR,"交易跟踪号[%ld]\t传入交易信息[%s]\n",mbuf->innerid,tranbuf->outtran); if(unpack(mbuf->tranbuf.chnlname,tranbuf->outtran)==-1) { SysLog(LOG_CHNL_ERR,"解[%s]包失败\t传入交易信息[%s]\n",mbuf->tranbuf.chnlname,tranbuf->outtran); seterr("EEEEEEEE","解包失败"); }else { **/ SysLog(LOG_CHNL_DEBUG,"FILE [%s] LINE[%d] 交易跟踪号[%ld]\t传入交易信息[%s][%s]\n",__FILE__,__LINE__,inerid,tranbuf->outtran,tranbuf->intran); if(strcmp(tranbuf->outtran,"")) { strtok(tranbuf->outtran,"|"); strcpy(tmpfilename,strtok(NULL,"|")); strcpy(headbuf,strtok(NULL,"|")); fp = fopen(tmpfilename,"r"); if(fp==NULL) { SysLog(LOG_CHNL_ERR,"FILE [%s] LINE[%d] 读取文件[%s]失败:%s\n",__FILE__,__LINE__,tmpfilename,strerror(errno)); return -1; } if(fread(tmpbuffer, sizeof(tmpbuffer), 1,fp) != -1) { sprintf(buffer,"%s%s%s%s",headbuf,"\r","\n",tmpbuffer); *messlen = (MQLONG)strlen(buffer); /* length without null */ fclose(fp); return 0; } }else { SysLog(LOG_CHNL_ERR,"FILE [%s] LINE[%d] 传入数据为空:%s\n",__FILE__,__LINE__); return -1; } //} }else { SysLog(LOG_CHNL_ERR,"FILE[%s] LINE[%d]获取传入交易信息失败\n"__FILE__,__LINE__); return -1; } }
int load_vardef_cfg(char *filename) { int shmid,i=0; char buff[1200]; _vardef *vardef=NULL; char *tmpbuf = NULL; size_t shmsize; FILE *fp=NULL; memset(buff,0,sizeof(buff)); /** init vardef **/ shmsize=MAXVARDEF*sizeof(_vardef); if((shmid=getshmid(4,shmsize))==-1) { SysLog(LOG_SYS_ERR,"获取交易定义表共享内存失败\n"); return -1; } SysLog(LOG_SYS_SHOW,"开始加载变量定义区共享内存配置 \n"); vardef = (_vardef *)shmat(shmid,NULL,0); if(vardef == NULL) { SysLog(LOG_SYS_ERR,"链接交易定义表共享内存失败\n"); return -1; } fp = fopen(filename,"r"); if(fp==NULL) { SysLog(LOG_SYS_ERR,"打开文件[%s]失败[%s]\n",filename,strerror(errno)); shmdt(vardef); return -1; } while(fgets(buff,sizeof(buff),fp)!=NULL) { buff[strlen(buff)-1]='\0'; if(buff[0]=='#') { //cmsg++; continue; } /** need if else **/ strcpy(vardef->varname,strtok(buff,"^")); strcpy(vardef->varmark,strtok(NULL,"^")); strcpy(vardef->vartype,strtok(NULL,"^")); vardef->varlen=atoi(strtok(NULL,"^")); vardef++; } shmdt(vardef); fclose(fp); SysLog(LOG_SYS_SHOW,"加载变量定义区共享内存配置成功 \n"); return 0; }
HANDLE FileList::OpenPluginForFile(const string* FileName, DWORD FileAttr, OPENFILEPLUGINTYPE Type) { HANDLE Result = nullptr; if(FileName && *FileName && !(FileAttr&FILE_ATTRIBUTE_DIRECTORY)) { SetCurPath(); _ALGO(SysLog(L"close AnotherPanel file")); CtrlObject->Cp()->GetAnotherPanel(this)->CloseFile(); _ALGO(SysLog(L"call Plugins.OpenFilePlugin {")); Result = CtrlObject->Plugins->OpenFilePlugin(FileName, 0, Type); _ALGO(SysLog(L"}")); } return Result; }
int getchnlcfg(char *chnlname) { FILE *fp; char tmpbuf[60]; memset(tmpbuf,0,sizeof(tmpbuf)); char cfgpath[100]; memset(cfgpath,0,sizeof(cfgpath)); if(chnlname == NULL) { SysLog(LOG_CHNL_ERR,"FILE [%s] LINE[%d] 传入渠道名称为空\n",__FILE__,__LINE__); return -1; } /** 初始化系统所有渠道的队列区 **/ sprintf(cfgpath,"%s%s",upshome,"/cfg/chnl.cfg"); fp = fopen(cfgpath,"r"); if(fp == NULL) { SysLog(LOG_CHNL_ERR,"FILE [%s] LINE[%d]打开渠道初始化配置文件失败:[%s]\n",__FILE__,__LINE__,strerror(errno)); return -1; } while(fgets(tmpbuf,sizeof(tmpbuf),fp)!=NULL) { tmpbuf[strlen(tmpbuf)-1]='\0'; if(tmpbuf[0]=='*') continue; else if(tmpbuf[0]=='@'&&!strcmp(tmpbuf+1,chnlname)) { while(fgets(tmpbuf,sizeof(tmpbuf),fp)!=NULL) { tmpbuf[strlen(tmpbuf)-1]='\0'; if(!memcmp(tmpbuf,"队列管理器名称",14)) { strcpy(QMName,strstr(tmpbuf,":")+1); } if(!memcmp(tmpbuf,"远程队列名称",12)) { strcpy(RQName,strstr(tmpbuf,":")+1); } if(tmpbuf[0]=='@') return 0; } }else { continue; } } }
void Manager::DeactivateFrame(Frame *Deactivated,int Direction) { _MANAGER(CleverSysLog clv(L"Manager::DeactivateFrame (Frame *Deactivated,int Direction)")); _MANAGER(SysLog(L"Deactivated=%p, Direction=%d",Deactivated,Direction)); if (Direction) { FramePos+=Direction; if (Direction>0) { if (FramePos>=FrameCount) { FramePos=0; } } else { if (FramePos<0) { FramePos=FrameCount-1; } } ActivateFrame(FramePos); } else { // Direction==0 // Direct access from menu or (in future) from plugin } DeactivatedFrame=Deactivated; }
Panel::Panel(window_ptr Owner): ScreenObject(std::move(Owner)) { _OT(SysLog(L"[%p] Panel::Panel()", this)); SrcDragPanel=nullptr; DragX=DragY=-1; };
void Manager::ExecuteModal(window_ptr_ref Executed) { _MANAGER(CleverSysLog clv(L"Manager::ExecuteModal (window *Executed)")); _MANAGER(SysLog(L"Executed=%p",Executed)); bool stop=false; auto& stop_ref=m_Executed[Executed]; if (stop_ref) return; stop_ref=&stop; auto OriginalStartManager = StartManager; StartManager = true; for (;;) { Commit(); if (stop) { break; } ProcessMainLoop(); } StartManager = OriginalStartManager; return;// GetModalExitCode(); }
void Manager::RefreshFrame(Frame *Refreshed) { _MANAGER(CleverSysLog clv(L"Manager::RefreshFrame(Frame *Refreshed)")); _MANAGER(SysLog(L"Refreshed=%p",Refreshed)); if (ActivatedFrame) return; if (Refreshed) { RefreshedFrame=Refreshed; } else { RefreshedFrame=CurrentFrame; } if (IndexOf(Refreshed)==-1 && IndexOfStack(Refreshed)==-1) return; /* $ 13.04.2002 KM - Вызываем принудительный Commit() для фрейма имеющего члена NextModal, это означает что активным сейчас является VMenu, а значит Commit() сам не будет вызван после возврата из функции. Устраняет ещё один момент неперерисовки, когда один над другим находится несколько объектов VMenu. Пример: настройка цветов. Теперь AltF9 в диалоге настройки цветов корректно перерисовывает меню. */ if (RefreshedFrame && RefreshedFrame->NextModal) Commit(); }
void Manager::InsertWindow(window_ptr_ref Inserted) { _MANAGER(CleverSysLog clv(L"Manager::InsertWindow(window *Inserted, int Index)")); _MANAGER(SysLog(L"Inserted=%p, Index=%i",Inserted, Index)); CheckAndPushWindow(Inserted,&Manager::InsertCommit); }
void Manager::RefreshCommit() { _MANAGER(CleverSysLog clv(L"Manager::RefreshCommit()")); _MANAGER(SysLog(L"RefreshedFrame=%p",RefreshedFrame)); if (!RefreshedFrame) return; if (IndexOf(RefreshedFrame)==-1 && IndexOfStack(RefreshedFrame)==-1) return; if (!RefreshedFrame->Locked()) { if (!Global->IsRedrawFramesInProcess) RefreshedFrame->ShowConsoleTitle(); if (RefreshedFrame) RefreshedFrame->Refresh(); if (!RefreshedFrame) return; CtrlObject->Macro.SetMode(RefreshedFrame->GetMacroMode()); } if ((Global->Opt->ViewerEditorClock && (RefreshedFrame->GetType() == MODALTYPE_EDITOR || RefreshedFrame->GetType() == MODALTYPE_VIEWER)) || (Global->WaitInMainLoop && Global->Opt->Clock)) ShowTime(1); }
FileViewer::FileViewer(const wchar_t *Name,int EnableSwitch,int DisableHistory, const wchar_t *Title, int X1,int Y1,int X2,int Y2,UINT aCodePage): View(false,aCodePage) { _OT(SysLog(L"[%p] FileViewer::FileViewer(II variant...)", this)); DisableEdit=TRUE; if (X1 < 0) X1=0; if (X2 < 0 || X2 > ScrX) X2=ScrX; if (Y1 < 0) Y1=0; if (Y2 < 0 || Y2 > ScrY) Y2=ScrY; if (X1 >= X2) { X1=0; X2=ScrX; } if (Y1 >= Y2) { Y1=0; Y2=ScrY; } SetPosition(X1,Y1,X2,Y2); FullScreen=(!X1 && !Y1 && X2==ScrX && Y2==ScrY); View.SetTitle(Title); Init(Name,EnableSwitch,DisableHistory,-1,L"",nullptr,FALSE); }
void FileList::Update(int Mode) { _ALGO(CleverSysLog clv(L"FileList::Update")); _ALGO(SysLog(L"(Mode=[%d/0x%08X] %s)",Mode,Mode,(Mode==UPDATE_KEEP_SELECTION?L"UPDATE_KEEP_SELECTION":L""))); if (EnableUpdate) switch (PanelMode) { case NORMAL_PANEL: ReadFileNames(Mode & UPDATE_KEEP_SELECTION, Mode & UPDATE_IGNORE_VISIBLE,Mode & UPDATE_DRAW_MESSAGE); break; case PLUGIN_PANEL: { OpenPanelInfo Info; CtrlObject->Plugins->GetOpenPanelInfo(hPlugin,&Info); ProcessPluginCommand(); if (PanelMode!=PLUGIN_PANEL) ReadFileNames(Mode & UPDATE_KEEP_SELECTION, Mode & UPDATE_IGNORE_VISIBLE,Mode & UPDATE_DRAW_MESSAGE); else if ((Info.Flags & OPIF_REALNAMES) || CtrlObject->Cp()->GetAnotherPanel(this)->GetMode()==PLUGIN_PANEL || !(Mode & UPDATE_SECONDARY)) UpdatePlugin(Mode & UPDATE_KEEP_SELECTION, Mode & UPDATE_IGNORE_VISIBLE); } ProcessPluginCommand(); break; } LastUpdateTime=clock(); }
void Manager::ModalizeFrame(Frame *Modalized, int Mode) { _MANAGER(CleverSysLog clv(L"Manager::ModalizeFrame (Frame *Modalized, int Mode)")); _MANAGER(SysLog(L"Modalized=%p",Modalized)); ModalizedFrame=Modalized; ModalizeCommit(); }
//------------------------------------------------------------------------------ // FUNCTION // macfilter_match // // DESCRIPTION // // // PARAMETERS // // // RETURN // // //------------------------------------------------------------------------------ int macfilter_match(struct ifnet *ifp, char *head, struct mbuf *m) { struct macfilter *entry; struct ip *ip; int idx; if(m->m_pkthdr.len < 20) return default_action; ip = mtod(m, struct ip *); if ((ip->ip_dst.s_addr == SYS_lan_ip) || (ip->ip_dst.s_addr == INADDR_BROADCAST)){ return MACF_PASS; } idx = MAC2INDEX(&head[6]); for (entry = macfilhash[idx]; entry != NULL; entry = entry->next) { if (! (entry->flags & MACF_FG_ACTIVE)) continue; if(!memcmp(&head[6], entry->mac, 6)) { #ifdef CONFIG_MACFLT_LOG if((MACF_BLOCK^default_action) == MACF_BLOCK) SysLog(LOG_DROPPK|SYS_LOG_NOTICE|LOGM_FIREWALL, "**%s** [%s] match", STR_FILTER, ether_ntoa((struct ether_addr *)(entry->mac))); #endif return MACF_BLOCK^default_action; } } return default_action; }
void Manager::UnmodalizeFrame(Frame *Unmodalized) { _MANAGER(CleverSysLog clv(L"Manager::UnmodalizeFrame (Frame *Unmodalized)")); _MANAGER(SysLog(L"Unmodalized=%p",Unmodalized)); UnmodalizedFrame=Unmodalized; UnmodalizeCommit(); }
/* $ 12.04.2002 IS PluginPutFilesToAnother теперь int - возвращает то, что возвращает PutFiles: -1 - прервано пользовтелем 0 - неудача 1 - удача 2 - удача, курсор принудительно установлен на файл и заново его устанавливать не нужно (см. PluginPutFilesToNew) */ int FileList::PluginPutFilesToAnother(int Move,Panel *AnotherPanel) { if (AnotherPanel->GetMode()!=PLUGIN_PANEL) return 0; FileList *AnotherFilePanel=(FileList *)AnotherPanel; PluginPanelItem *ItemList; int ItemNumber,PutCode=0; SaveSelection(); CreatePluginItemList(ItemList,ItemNumber); if (ItemList && ItemNumber>0) { SetCurPath(); _ALGO(SysLog(L"call Plugins.PutFiles")); PutCode=CtrlObject->Plugins->PutFiles(AnotherFilePanel->hPlugin,ItemList,ItemNumber,Move!=0,0); if (PutCode==1 || PutCode==2) { if (!ReturnCurrentFile) { _ALGO(SysLog(L"call ClearSelection()")); ClearSelection(); } _ALGO(SysLog(L"call PutDizToPlugin")); PutDizToPlugin(AnotherFilePanel,ItemList,ItemNumber,FALSE,Move,&Diz,&AnotherFilePanel->Diz); AnotherPanel->SetPluginModified(); } else if (!ReturnCurrentFile) PluginClearSelection(ItemList,ItemNumber); _ALGO(SysLog(L"call DeletePluginItemList")); DeletePluginItemList(ItemList,ItemNumber); Update(UPDATE_KEEP_SELECTION); Redraw(); if (AnotherPanel==CtrlObject->Cp()->GetAnotherPanel(this)) { AnotherPanel->Update(UPDATE_KEEP_SELECTION); AnotherPanel->Redraw(); } } return PutCode; }
bool COptimizedTexture::SaveDescriptions(char *resfile, char *texfile, char *texname) { GfxObjIterator it; FILE *fp; // check for data to be available if(!GetNumPlaced()) { SysLog("No descriptions to save: %s\n", resfile); return false; } // create resource file fp=fopen(resfile,"w"); if(!fp) { SysLog("Can't create description file: %s\n", resfile); return false; } // save texture description if(texfile && texname) { fprintf(fp, "Texture %s\n", texname); fprintf(fp, "{\n"); fprintf(fp, " filename = \"%s\"\n", texfile); fprintf(fp, " resgroup = %d\n", (*obj_list.begin())->GetResGroup()); fprintf(fp, "}\n\n"); } // save object descriptions for(it = obj_list.begin(); it != obj_list.end(); it++) { if(!(*it)->SaveDescription(fp, texname)) { fclose(fp); SysLog("Error writing description: %s\n", (*it)->GetName()); return false; } fprintf(fp,"\n"); } fclose(fp); return true; }
CBaLog* CBaLog::commonCreate(std::string name, std::string path, EBaLogPrio prioFilt, EBaLogOut out, int32_t maxFileSizeB, uint16_t maxNoFiles, uint16_t maxBufLength, uint16_t fileCnt, int32_t fileSizeB, bool fromCfg, bool disableThread) { if (name.empty() || !init(disableThread)) { return 0; } // Check if already exists auto logger = sLoggers.find(name); if (logger != sLoggers.end()) { logger->second->mOpenCnt++; return logger->second; } // Set default if (path == "") { path = LOGDIR; } // Limit the priorities prioFilt = MINMAX(prioFilt, eBaLogPrio_Trace, eBaLogPrio_UpsCrash); // //////////////// Create ////////////// // If windows, remove the trailing '\' because it generates problems with the // when the path is saved with the IniParser #ifdef __WIN32 if (path.back() == '\\') { path.resize(path.length() - 1); } #endif CBaLog *p = new CBaLog(name, path, prioFilt, out, maxFileSizeB, maxNoFiles, maxBufLength, fileCnt, fileSizeB); if (!p) { SysLog(TAG, __LINE__, "Could not create logger"); return 0; } // //////////////// Create ////////////// p->mFullPath = BaPath::Concatenate(p->mPath, p->mName) + ".log"; std::ios_base::openmode om = std::ios_base::binary | std::ios_base::out; if (fromCfg) { om |= std::ios_base::app; } // //////////////// Open //////////////// p->mLog.open(p->mFullPath, om); if (p->mLog.fail()) { BASYSLOG(TAG, "Cannot open log file: %s", p->mFullPath.c_str()); delete p; return 0; } // //////////////// Open //////////////// sLoggers[p->mName] = p; return p; }
void Sys::log(const char*level,const char* file, const char* function, const char * format, ...) { va_list args; va_start(args, format); SysLog(level,file, function, format, args); va_end(args); }
void FilePanels::SetScreenPosition() { _OT(SysLog(L"[%p] FilePanels::SetScreenPosition() {%d, %d - %d, %d}", this,X1,Y1,X2,Y2)); CtrlObject->CmdLine->SetPosition(0,ScrY-(Opt.ShowKeyBar),ScrX-1,ScrY-(Opt.ShowKeyBar)); TopMenuBar.SetPosition(0,0,ScrX,0); MainKeyBar.SetPosition(0,ScrY,ScrX,ScrY); SetPanelPositions(LeftPanel->IsFullScreen(),RightPanel->IsFullScreen()); SetPosition(0,0,ScrX,ScrY); }
void FilePanels::ResizeConsole() { Frame::ResizeConsole(); CtrlObject->CmdLine->ResizeConsole(); MainKeyBar.ResizeConsole(); TopMenuBar.ResizeConsole(); SetScreenPosition(); _OT(SysLog(L"[%p] FilePanels::ResizeConsole() {%d, %d - %d, %d}", this,X1,Y1,X2,Y2)); }
int initmsg(char *chnlname) { char keypath[60]; char tmptouch[66]; memset(keypath,0,sizeof(keypath)); memset(tmptouch,0,sizeof(tmptouch)); sprintf(keypath,"%s%s%s",upshome,"/etc/",chnlname); sprintf(tmptouch,"touch %s",keypath); system(tmptouch); key_t key; int msgid; /** 发送到核心队列**/ if((key=ftok(keypath,1))==-1) { SysLog(LOG_SYS_ERR,"获取渠道[%s]消息队列key值失败[%s]",chnlname,strerror(errno)); return -1; } if((msgid = msgget(key,IPC_CREAT|IPC_EXCL|00666))==-1) { SysLog(LOG_SYS_ERR,"获取渠道[%s]消息队列失败[%s]",chnlname,strerror(errno)); return -1; } SysLog(LOG_SYS_SHOW,"FILE[%s]LINE[%d]渠道[%s]发送核心消息队列为[%d]\n",__FILE__,__LINE__,chnlname,msgid); /**接收核心返回队列**/ if((key=ftok(keypath,2))==-1) { SysLog(LOG_SYS_ERR,"获取渠道[%s]消息队列key值失败[%s]",chnlname,strerror(errno)); return -1; } if((msgid = msgget(key,IPC_CREAT|IPC_EXCL|00666))==-1) { SysLog(LOG_SYS_ERR,"获取渠道[%s]消息队列失败[%s]",chnlname,strerror(errno)); return -1; } SysLog(LOG_SYS_SHOW,"FILE[%s]LINE[%d]渠道[%s]接收核心消息队列为[%d]\n",__FILE__,__LINE__,chnlname,msgid); /** 返回核心应答队列**/ if((key=ftok(keypath,3))==-1) { SysLog(LOG_SYS_ERR,"获取渠道[%s]消息队列key值失败[%s]",chnlname,strerror(errno)); return -1; } if((msgid = msgget(key,IPC_CREAT|IPC_EXCL|00666))==-1) { SysLog(LOG_SYS_ERR,"获取渠道[%s]消息队列失败[%s]",chnlname,strerror(errno)); return -1; } SysLog(LOG_SYS_SHOW,"FILE[%s]LINE[%d]渠道[%s]返回核心应答消息队列为[%d]\n",__FILE__,__LINE__,chnlname,msgid); return 0; }
void Manager::DeleteWindow(window_ptr_ref Deleted) { _MANAGER(CleverSysLog clv(L"Manager::DeleteWindow(window *Deleted)")); _MANAGER(SysLog(L"Deleted=%p",Deleted)); const auto& Window=Deleted?Deleted:m_currentWindow; assert(Window); CheckAndPushWindow(Window,&Manager::DeleteCommit); Window->SetDeleting(); }
void DlgEdit::DoEditChange() { auto dialog=GetDialog(); _DIALOG(CleverSysLog CL(L"DlgEdit::DoEditChange()")); _DIALOG(SysLog(L"m_Owner=%p, m_Owner->IsInited()=%d, m_Index=%d",dialog,dialog->IsInited(),m_Index)); if (dialog->IsInited()) { dialog->SendMessage(DN_EDITCHANGE,m_Index,0); } }