CLogSocketSink::CLogSocketSink(const LogSettings& oSettings) { m_URL = oSettings.getLogURL(); CThreadQueue::setLogCategory(LogCategory("NO_LOGGING")); setPollInterval(QUEUE_POLL_INTERVAL_INFINITE); start(epLow); }
int main(int argc, char** argv) { // Start. std::string CommandLine; for( int Idx = 0; Idx < argc; ++Idx ) { CommandLine += argv[ Idx ]; CommandLine += " "; } GInstance_ = (BcHandle)0; // Set command line params. SysArgs_ = CommandLine; // HACK: Append a space to sys args for find to work. SysArgs_ += " "; // If we have no log, setup a default one. #if !PSY_PRODUCTION if( BcLog::pImpl() == NULL ) { new BcLogImpl(); } // Some default suppression. BcLog::pImpl()->setCategorySuppression( "Reflection", BcTrue ); // Setup basic log Category. BcLogScopedCategory LogCategory( "Main" ); #endif // Initialise RNG. #if !PSY_DEBUG BcRandom::Global = BcRandom( 1337 ); // TODO LINUX #endif // Additional input devices. GInputMindwave_.reset( new OsInputMindwaveLinux() ); // Create reflection database ReManager::Init(); #if PSY_USE_PROFILER // new profiler. new SysProfilerChromeTracing(); #endif // Unit tests prior to full kernel initialisation. if( SysArgs_.find( "-unittest " ) != std::string::npos ) { extern void MainUnitTests(); MainUnitTests(); return 0; } // Create kernel. new SysKernel( GPsySetupParams.TickRate_ ); // Register systems for creation. SYS_REGISTER( "DsCore", DsCoreImpl ); SYS_REGISTER( "DsCoreLogging", DsCoreLoggingImpl ); SYS_REGISTER( "OsCore", OsCoreImplSDL ); SYS_REGISTER( "FsCore", FsCoreImplLinux ); SYS_REGISTER( "CsCore", CsCore ); SYS_REGISTER( "RsCore", RsCoreImpl ); SYS_REGISTER( "SsCore", SsCoreImplSoLoud ); SYS_REGISTER( "ScnCore", ScnCore ); // Main shared. MainShared(); OsCore::pImpl()->subscribe( sysEVT_SYSTEM_POST_OPEN, OnPostOsOpen_CreateClient ); OsCore::pImpl()->subscribe( sysEVT_SYSTEM_POST_CLOSE, OnPostOsClose_DestroyClient ); OsCore::pImpl()->subscribe( sysEVT_SYSTEM_PRE_UPDATE, OnPreOsUpdate_PumpMessages ); ScnCore::pImpl()->subscribe( sysEVT_SYSTEM_POST_OPEN, OnPostOpenScnCore_LaunchGame ); // Init game. PsyGameInit(); // if( ( GPsySetupParams.Flags_ & psySF_MANUAL ) == 0 ) { // Run kernel unthreaded. SysKernel::pImpl()->run( BcFalse ); } // Delete kernel. delete SysKernel::pImpl(); // Delete log. delete BcLog::pImpl(); // Done. return 0; }
void DA::Log::DeclareLogCategory(const char* Category, OutputMethod::Type OutMethod, DetailLevel::Type Detail) { mLogCategories[std::string(Category)] = LogCategory(OutMethod, Detail); }