Leviathan game engine
Leviathan::ServerApplication Class Reference

#include <ServerApplication.h>

+ Inheritance diagram for Leviathan::ServerApplication:

Public Member Functions

DLLEXPORT ServerApplication ()
DLLEXPORT ~ServerApplication ()
DLLEXPORT bool PassCommandLine (int argcount, char *args[]) override
 Makes sure doesn't start in GUI mode. More...
NETWORKED_TYPE GetProgramNetType () const override
- Public Member Functions inherited from Leviathan::LeviathanApplication
DLLEXPORT LeviathanApplication ()
DLLEXPORT LeviathanApplication (Engine *engine)
 Version for tests with incomplete engine instance. More...
virtual DLLEXPORT ~LeviathanApplication ()
virtual DLLEXPORT bool Initialize (AppDef *configuration)
DLLEXPORT void ForceRelease ()
 Used to immediately terminate the program. More...
virtual DLLEXPORT void StartRelease ()
 Safely releases the Application //. More...
DLLEXPORT void MarkAsClosing ()
 Thread safely marks the game to close sometime. More...
virtual DLLEXPORT int RunMessageLoop ()
virtual DLLEXPORT float RunSingleUpdate ()
 Runs a single engine update cycle (tick + render) More...
virtual DLLEXPORT void Tick (float elapsed)
virtual DLLEXPORT void PreFirstTick ()
DLLEXPORT bool Quitting ()
DLLEXPORT EngineGetEngine ()
DLLEXPORT AppDefGetDefinition ()
DLLEXPORT void ClearTimers ()
 Resets all time sensitive timers. More...
virtual DLLEXPORT bool InitLoadCustomScriptTypes (asIScriptEngine *engine)
virtual DLLEXPORT void CustomizeEnginePostLoad ()
virtual DLLEXPORT void EnginePreShutdown ()
virtual DLLEXPORT std::shared_ptr< GameWorldGetGameWorld (int id)
 Used to query a world for specific id. More...
- Public Member Functions inherited from Leviathan::ThreadSafeGeneric< MutexType >
DLLEXPORT ThreadSafeGeneric ()
DLLEXPORT ~ThreadSafeGeneric ()
FORCE_INLINE void VerifyLock (RecursiveLock &guard) const
FORCE_INLINE void VerifyLock (Lock &lockit) const

Additional Inherited Members

- Public Types inherited from Leviathan::ThreadSafeGeneric< MutexType >
using LockT = typename LockTypeResolver< MutexType >::LType
- Static Public Member Functions inherited from Leviathan::LeviathanApplication
static DLLEXPORT LeviathanApplicationGet ()
static DLLEXPORT void DummyGameConfigurationVariables (GameConfiguration *configobj)
static DLLEXPORT void DummyGameKeyConfigVariables (KeyConfiguration *keyconfigobj)
static DLLEXPORT void StartServerProcess (const std::string &processname, const std::string &commandline)
static DLLEXPORT std::vector< std::string > CommandLineStringSplitter (const char *str, std::vector< char * > &argcharstrings, bool addprogramname=true)
 Splits a single string command line into arguments. More...
- Protected Member Functions inherited from Leviathan::LeviathanApplication
virtual DLLEXPORT void Release ()
 Performs the final steps in the release process. More...
virtual DLLEXPORT void _InternalInit ()
virtual NetworkInterface_GetApplicationPacketHandler ()=0
 Called in Initialize to get the derived packet handler type. More...
virtual void _ShutdownApplicationPacketHandler ()=0
- Protected Attributes inherited from Leviathan::LeviathanApplication
bool Quit = false
bool ShouldQuit = false
bool QuitSometime = false
 This can be quickly set anywhere to quit sometime in the future. More...
bool ExternalEngineInstance = false
AppDefApplicationConfiguration = nullptr
bool PreferSleepOverLoopAccuracy = false
- Protected Attributes inherited from Leviathan::ThreadSafeGeneric< MutexType >
MutexType ObjectsLock
- Static Protected Attributes inherited from Leviathan::LeviathanApplication
static LeviathanApplicationCurapp = NULL

Detailed Description

Definition at line 9 of file ServerApplication.h.

Constructor & Destructor Documentation

◆ ServerApplication()

DLLEXPORT Leviathan::ServerApplication::ServerApplication ( )

Definition at line 5 of file ServerApplication.cpp.

5  {
7 }

◆ ~ServerApplication()

DLLEXPORT Leviathan::ServerApplication::~ServerApplication ( )

Definition at line 9 of file ServerApplication.cpp.

9  {
11 }

Member Function Documentation

◆ GetProgramNetType()

NETWORKED_TYPE Leviathan::ServerApplication::GetProgramNetType ( ) const

Implements Leviathan::LeviathanApplication.

Definition at line 17 of file ServerApplication.h.

◆ PassCommandLine()

DLLEXPORT bool Leviathan::ServerApplication::PassCommandLine ( int  argcount,
char *  args[] 

Makes sure doesn't start in GUI mode.

Reimplemented from Leviathan::LeviathanApplication.

Definition at line 13 of file ServerApplication.cpp.

13  {
15  // Force nogui //
16  _Engine->SetNoGUI();
18  // Now pass it //
19  return _Engine->PassCommandLine(argcount, args);
20 }
void SetNoGUI()
Definition: Engine.h:267
DLLEXPORT bool PassCommandLine(int argcount, char *args[])
Definition: Engine.cpp:1294

The documentation for this class was generated from the following files: