void P_APIENTRY pMatrix4x4Print(const pfloat32 *matrix) { PLOG_INFO("%6.3f %6.3f %6.3f %6.3f", matrix[0], matrix[4], matrix[8], matrix[12]); PLOG_INFO("%6.3f %6.3f %6.3f %6.3f", matrix[1], matrix[5], matrix[9], matrix[13]); PLOG_INFO("%6.3f %6.3f %6.3f %6.3f", matrix[2], matrix[6], matrix[10], matrix[14]); PLOG_INFO("%6.3f %6.3f %6.3f %6.3f", matrix[3], matrix[7], matrix[11], matrix[15]); }
pbool MyContext::onInitialized() { m_scene = PNEW(MyScene(this)); PSceneManager *sceneMgr = module<PSceneManager>("scene-manager"); sceneMgr->addScene(m_scene); sceneMgr->setMainScene(m_scene); PLOG_INFO("<Key settings>"); PLOG_INFO("P - use point lighting"); PLOG_INFO("D - use directional lighting"); PLOG_INFO("S - use spot lighting"); PLOG_INFO("H - switch low and high lighting quality"); return true; }
int main(int argc, char * argv[]) { gflags::ParseCommandLineFlags(&argc, &argv, false); delay_init::call_all_level(); PLOG_INFO("delay init total:",delay_init::total_cnt ," success:",delay_init::success_cnt ,", failed:",delay_init::failed_cnt); if(delay_init::failed_cnt>0) { PLOG_ERROR("delay init failed, failed num:", delay_init::failed_cnt); return 1; } if (prepare_data(FLAGS_data_file.c_str())) { PLOG_ERROR("read data failed!"); return 1; } conet::init_conet_global_env(); conet::init_conet_env(); CONET_DEFER({ conet::free_conet_env(); conet::free_conet_global_env(); });
void* server_worker_t::main(void * arg) { conet::init_conet_env(); server_worker_t *self = (server_worker_t *)(arg); if (self->cpu_affinity && CPU_COUNT(self->cpu_affinity) > 0) { int ret = 0; pthread_t tid = pthread_self(); ret = pthread_setaffinity_np(tid, sizeof(cpu_set_t), self->cpu_affinity); if (ret) { PLOG_ERROR("set affinity failed , ", (tid, ret)); } else { PLOG_INFO("set affinity success, ", (tid)); } } int size = self->conf.servers_size(); for (int i=0; i<size; ++i) { RpcServer const & server_conf = self->conf.servers(i); rpc_pb_server_t *rpc_server = self->build_rpc_server(server_conf); if (rpc_server) { self->rpc_servers.push_back(rpc_server); } } int ret = 0; size = self->rpc_servers.size(); for (int i=0; i<size; ++i) { // 启动server ret = self->rpc_servers[i]->start(); if (ret) { PLOG_ERROR("error start"); } } coroutine_t *exit_co = NULL; while (likely(!self->exit_finsished)) { if (unlikely(self->stop_flag && exit_co == NULL)) { exit_co = conet::alloc_coroutine( conet::ptr_cast<conet::co_main_func_t>( &server_worker_t::proc_server_exit), self); conet::resume(exit_co); } conet::dispatch(); } conet::free_coroutine(exit_co); conet::free_conet_env(); return NULL; }
pbool MyContext::onInitialized() { m_scene = PNEW(MyScene(this)); PSceneManager *sceneMgr = module<PSceneManager>("scene-manager"); sceneMgr->addScene(m_scene); sceneMgr->setMainScene(m_scene); PLOG_INFO("Press key 'P' to stop/start the rotation."); return true; }
PGlState::PGlState(const puint32 *initialViewport) { m_initialViewport[0] = initialViewport[0]; m_initialViewport[1] = initialViewport[1]; m_initialViewport[2] = initialViewport[2]; m_initialViewport[3] = initialViewport[3]; reset(); const GLubyte* vendor = glGetString(GL_VENDOR); PLOG_INFO("Running on %s display card", (pchar*)(vendor)); }
void P_APIENTRY pDebugPrintStack(pint32 skip) { typedef USHORT (WINAPI *CaptureStackBackTraceType)(__in ULONG, __in ULONG, __out PVOID*, __out_opt PULONG); CaptureStackBackTraceType func = (CaptureStackBackTraceType)(GetProcAddress(LoadLibrary(TEXT("kernel32.dll")), "RtlCaptureStackBackTrace")); if (func == NULL) { return ; } // Quote from Microsoft Documentation: // ## Windows Server 2003 and Windows XP: // ## The sum of the FramesToSkip and FramesToCapture parameters must be less than 63. const int kMaxCallers = 62; HANDLE hProcess = GetCurrentProcess(); SymInitialize(hProcess, NULL, TRUE); PSYMBOL_INFO pSymbol = (PSYMBOL_INFO)malloc(sizeof(SYMBOL_INFO) + 256); pSymbol->SizeOfStruct = sizeof(SYMBOL_INFO); pSymbol->MaxNameLen = 255; void* callers[kMaxCallers]; int count = (func)(0, kMaxCallers, callers, NULL); // To skip the pDebugPrintStack function frame, we start from 1 instead of 0. for(int i = skip; i < count; i++) { //PLOG_INFO("*** %d called from %016I64LX\n", i, callers[i]); DWORD addr = (DWORD)(callers[i]); DWORD64 symDisplacement = 0; if (SymFromAddr(hProcess, addr, 0, pSymbol)) { IMAGEHLP_LINE lineInfo = {sizeof(IMAGEHLP_LINE)}; DWORD dwLineDisplacement; if (SymGetLineFromAddr(hProcess, addr, &dwLineDisplacement, &lineInfo)) { PLOG_INFO("%s:%s(),Line %u", lineInfo.FileName, pSymbol->Name, lineInfo.LineNumber); } // Stop the walk at main function. if (pstrcmp(pSymbol->Name, "main") == 0) { break; } } } SymCleanup(GetCurrentProcess()); }
void P_APIENTRY pVector3Print(const pfloat32 *vector3) { PLOG_INFO("%6.3f %6.3f %6.3f", vector3[0], vector3[1], vector3[2]); }
void MyClient::onConnected() { PLOG_INFO("Connecting to %s:%d succeed.", m_address.c_str(), m_port); }