![]() |
AzerothCore 3.3.5a
OpenSource WoW Emulator
|
Files | |
| file | CliRunnable.cpp |
| file | CliRunnable.h |
| file | Main.cpp |
Classes | |
| class | FreezeDetector |
Macros | |
| #define | _ACORE_CORE_CONFIG "worldserver.conf" |
Functions | |
| static void | PrintCliPrefix () |
| void | utf8print (void *, std::string_view str) |
| void | commandFinished (void *, bool) |
| void | CliThread () |
| Thread start | |
| FreezeDetector::FreezeDetector (Acore::Asio::IoContext &ioContext, uint32 maxCoreStuckTime) | |
| static void | FreezeDetector::Start (std::shared_ptr< FreezeDetector > const &freezeDetector) |
| static void | FreezeDetector::Handler (std::weak_ptr< FreezeDetector > freezeDetectorRef, boost::system::error_code const &error) |
| void | SignalHandler (boost::system::error_code const &error, int signalNumber) |
| void | ClearOnlineAccounts () |
| Clear 'online' status for all accounts with characters in this realm. | |
| bool | StartDB () |
| Initialize connection to the databases. | |
| void | StopDB () |
| bool | LoadRealmInfo (Acore::Asio::IoContext &ioContext) |
| AsyncAcceptor * | StartRaSocketAcceptor (Acore::Asio::IoContext &ioContext) |
| void | ShutdownCLIThread (std::thread *cliThread) |
| void | WorldUpdateLoop () |
| variables_map | GetConsoleArguments (int argc, char **argv, fs::path &configFile, std::string &cfg_service) |
| int | main (int argc, char **argv) |
| Launch the Azeroth server. | |
Variables | |
| static constexpr char | CLI_PREFIX [] = "AC> " |
| char | serviceName [] = "worldserver" |
| char | serviceLongName [] = "AzerothCore world service" |
| char | serviceDescription [] = "AzerothCore World of Warcraft emulator world service" |
| int | m_ServiceStatus = -1 |
| boost::asio::steady_timer | FreezeDetector::_timer |
| uint32 | FreezeDetector::_worldLoopCounter |
| uint32 | FreezeDetector::_lastChangeMsTime |
| uint32 | FreezeDetector::_maxCoreStuckTimeInMs |
| #define _ACORE_CORE_CONFIG "worldserver.conf" |
| void ClearOnlineAccounts | ( | ) |
#include <azerothcore-wotlk/src/server/apps/worldserver/Main.cpp>
Clear 'online' status for all accounts with characters in this realm.
References CharacterDatabase, Realm::Id, LoginDatabase, realm, and RealmHandle::Realm.
| void CliThread | ( | ) |
#include <azerothcore-wotlk/src/server/apps/worldserver/CommandLine/CliRunnable.cpp>
Thread start
Command Line Interface handling thread.
References CLI_PREFIX, commandFinished(), World::IsStopped(), PrintCliPrefix(), sConfigMgr, SHUTDOWN_EXIT_CODE, World::StopNow(), sWorld, utf8print(), and WStrToUtf8().
Referenced by main().
| void commandFinished | ( | void * | , |
| bool | |||
| ) |
#include <azerothcore-wotlk/src/server/apps/worldserver/CommandLine/CliRunnable.cpp>
References PrintCliPrefix().
Referenced by CliThread().
|
inline |
#include <azerothcore-wotlk/src/server/apps/worldserver/Main.cpp>
| variables_map GetConsoleArguments | ( | int | argc, |
| char ** | argv, | ||
| fs::path & | configFile, | ||
| std::string & | cfg_service | ||
| ) |
#include <azerothcore-wotlk/src/server/apps/worldserver/Main.cpp>
References _ACORE_CORE_CONFIG, GitRevision::GetFullVersion(), and sConfigMgr.
Referenced by main().
|
static |
#include <azerothcore-wotlk/src/server/apps/worldserver/Main.cpp>
References ABORT, Acore::Asio::SteadyTimer::GetExpirationTime(), getMSTime(), getMSTimeDiff(), FreezeDetector::Handler(), LOG_ERROR, and World::m_worldLoopCounter.
Referenced by FreezeDetector::Handler(), and FreezeDetector::Start().
| bool LoadRealmInfo | ( | Acore::Asio::IoContext & | ioContext | ) |
#include <azerothcore-wotlk/src/server/apps/worldserver/Main.cpp>
References Realm::AllowedSecurityLevel, Realm::Build, Realm::ExternalAddress, Realm::Flags, Field::Get(), Realm::Id, Realm::LocalAddress, Realm::LocalSubnetMask, LOG_ERROR, LoginDatabase, Realm::Name, Realm::PopulationLevel, Realm::Port, realm, RealmHandle::Realm, Acore::Asio::Resolver::Resolve(), Realm::Timezone, and Realm::Type.
Referenced by main().
| int main | ( | int | argc, |
| char ** | argv | ||
| ) |
#include <azerothcore-wotlk/src/server/apps/worldserver/Main.cpp>
Launch the Azeroth server.
worldserver PID file creation
References _ACORE_CORE_CONFIG, Acore::Impl::CurrentServerProcessHolder::_type, Acore::AbortHandler(), ACSoapThread(), AddScripts(), ClearOnlineAccounts(), CliThread(), CONFIG_HIGH_PRIORITY, CONFIG_PORT_WORLD, CONFIG_PROCESSOR_AFFINITY, CreatePIDFile(), ERROR_EXIT_CODE, Realm::Flags, GetConsoleArguments(), World::GetExitCode(), GitRevision::GetFullVersion(), Realm::Id, LoadRealmInfo(), LOG_ERROR, LOG_INFO, LoginDatabase, m_ServiceStatus, METRIC_EVENT, Realm::Name, Realm::PopulationLevel, realm, RealmHandle::Realm, REALM_FLAG_OFFLINE, REALM_FLAG_VERSION_MISMATCH, sBattlegroundMgr, sConfigMgr, SERVER_PROCESS_WORLDSERVER, Acore::Module::SetEnableModulesList(), SetProcessPriority(), BigNumber::SetRand(), Acore::Banner::Show(), ShutdownCLIThread(), SignalHandler(), sLog, sMapMgr, sMetric, sOutdoorPvPMgr, sScriptMgr, sSecretMgr, FreezeDetector::Start(), StartDB(), StartRaSocketAcceptor(), StopDB(), World::StopNow(), sWorld, sWorldSessionMgr, sWorldSocketMgr, OpenSSLCrypto::threadsCleanup(), OpenSSLCrypto::threadsSetup(), and WorldUpdateLoop().
|
inlinestatic |
#include <azerothcore-wotlk/src/server/apps/worldserver/CommandLine/CliRunnable.cpp>
References CLI_PREFIX.
Referenced by CliThread(), and commandFinished().
| void ShutdownCLIThread | ( | std::thread * | cliThread | ) |
#include <azerothcore-wotlk/src/server/apps/worldserver/Main.cpp>
References LOG_DEBUG.
Referenced by main().
| void SignalHandler | ( | boost::system::error_code const & | error, |
| int | signalNumber | ||
| ) |
#include <azerothcore-wotlk/src/server/apps/worldserver/Main.cpp>
References SHUTDOWN_EXIT_CODE, and World::StopNow().
Referenced by main().
|
inlinestatic |
#include <azerothcore-wotlk/src/server/apps/worldserver/Main.cpp>
References Acore::Asio::SteadyTimer::GetExpirationTime(), and FreezeDetector::Handler().
Referenced by main().
| bool StartDB | ( | ) |
#include <azerothcore-wotlk/src/server/apps/worldserver/Main.cpp>
Initialize connection to the databases.
References DatabaseLoader::AddDatabase(), CharacterDatabase, ClearOnlineAccounts(), DatabaseLoader::DATABASE_MASK_ALL, GitRevision::GetFullVersion(), GitRevision::GetHash(), DatabaseLoader::GetUpdateFlags(), Realm::Id, MySQL::Library_Init(), DatabaseLoader::Load(), LOG_ERROR, LOG_INFO, LoginDatabase, realm, RealmHandle::Realm, sConfigMgr, PreparedStatementBase::SetData(), sScriptMgr, sWorld, WORLD_UPD_VERSION, and WorldDatabase.
Referenced by main().
| AsyncAcceptor * StartRaSocketAcceptor | ( | Acore::Asio::IoContext & | ioContext | ) |
#include <azerothcore-wotlk/src/server/apps/worldserver/Main.cpp>
References LOG_ERROR, and sConfigMgr.
Referenced by main().
| void StopDB | ( | ) |
#include <azerothcore-wotlk/src/server/apps/worldserver/Main.cpp>
References CharacterDatabase, MySQL::Library_End(), LoginDatabase, and WorldDatabase.
Referenced by main().
| void utf8print | ( | void * | , |
| std::string_view | str | ||
| ) |
#include <azerothcore-wotlk/src/server/apps/worldserver/CommandLine/CliRunnable.cpp>
Referenced by CliThread().
| void WorldUpdateLoop | ( | ) |
#include <azerothcore-wotlk/src/server/apps/worldserver/Main.cpp>
References CharacterDatabase, getMSTime(), getMSTimeDiff(), World::IsStopped(), LOG_ERROR, LoginDatabase, m_ServiceStatus, World::m_worldLoopCounter, sConfigMgr, SHUTDOWN_EXIT_CODE, World::StopNow(), sWorld, and WorldDatabase.
Referenced by main().
|
private |
|
private |
|
private |
|
private |
|
staticconstexpr |
#include <azerothcore-wotlk/src/server/apps/worldserver/CommandLine/CliRunnable.cpp>
Referenced by CliThread(), and PrintCliPrefix().
| int m_ServiceStatus = -1 |
#include <azerothcore-wotlk/src/server/apps/worldserver/Main.cpp>
Referenced by main(), and WorldUpdateLoop().
| char serviceDescription[] = "AzerothCore World of Warcraft emulator world service" |
| char serviceLongName[] = "AzerothCore world service" |
| char serviceName[] = "worldserver" |