XII Release 0.1.0
Loading...
Searching...
No Matches
xiiFileserverApp Class Reference

A stand-alone application for the xiiFileServer. More...

#include <Fileserve.h>

Inheritance diagram for xiiFileserverApp:
[legend]

Public Types

using SUPER = xiiApplication
 
- Public Types inherited from xiiApplication
enum class  Execution { Continue , Quit }
 Defines the possible return values for the xiiApplication::Run() function. More...
 

Public Member Functions

virtual xiiResult BeforeCoreSystemsStartup () override
 This function is called before any kind of engine initialization is done.
 
virtual void AfterCoreSystemsStartup () override
 This function is called after basic engine initialization has been done.
 
virtual void BeforeCoreSystemsShutdown () override
 This function is called after the application main loop has run for the last time, before engine deinitialization.
 
virtual xiiApplication::Execution Run () override
 Main run function which is called periodically. This function must be overridden.
 
void FileserverEventHandlerConsole (const xiiFileserverEvent &e)
 
void FileserverEventHandler (const xiiFileserverEvent &e)
 
void ShaderMessageHandler (xiiFileserveClientContext &ref_ctxt, xiiRemoteMessage &ref_msg, xiiRemoteInterface &ref_clientChannel, xiiDelegate< void(const char *)> logActivity)
 
void SetStyleSheet ()
 
- Public Member Functions inherited from xiiApplication
 xiiApplication (xiiStringView sAppName)
 Constructor.
 
virtual ~xiiApplication ()
 Virtual destructor.
 
void SetApplicationName (xiiStringView sAppName)
 Changes the application name.
 
const xiiStringGetApplicationName () const
 Returns the application name.
 
virtual void BeforeHighLevelSystemsShutdown ()
 This function is called after the application main loop has run for the last time, before engine deinitialization.
 
virtual void AfterHighLevelSystemsShutdown ()
 Called after xiiStartup::ShutdownHighLevelSystems() has been executed.
 
virtual void AfterCoreSystemsShutdown ()
 This function is called after xiiStartup::ShutdownCoreSystems() has been called.
 
virtual void BeforeEnterBackground ()
 This function is called when an application is moved to the background.
 
virtual void BeforeEnterForeground ()
 This function is called whenever an application is resumed from background mode.
 
void SetReturnCode (xiiInt32 iReturnCode)
 Sets the value that the application will return to the OS. You can call this function at any point during execution to update the return value of the application. Default is zero.
 
xiiInt32 GetReturnCode () const
 Returns the currently set value that the application will return to the OS.
 
virtual const char * TranslateReturnCode () const
 If the return code is not zero, this function might be called to get a string to print the error code in human readable form.
 
void SetCommandLineArguments (xiiUInt32 uiArgumentCount, const char **pArguments)
 Will set the command line arguments that were passed to the app by the OS. This is automatically called by XII_APPLICATION_ENTRY_POINT() and XII_CONSOLEAPP_ENTRY_POINT().
 
xiiUInt32 GetArgumentCount () const
 Returns the number of command line arguments that were passed to the application.
 
const char * GetArgument (xiiUInt32 uiArgument) const
 Returns one of the command line arguments that was passed to the application.
 
const char ** GetArgumentsArray () const
 Returns the complete array of command line arguments that were passed to the application.
 
void EnableMemoryLeakReporting (bool bEnable)
 
bool IsMemoryLeakReportingEnabled () const
 
virtual void RequestQuit ()
 Calling this function requests that the application quits after the current invocation of Run() finishes.
 
XII_ALWAYS_INLINE bool WasQuitRequested () const
 Returns whether RequestQuit() was called.
 

Public Attributes

xiiUInt32 m_uiSleepCounter = 0
 
xiiUInt32 m_uiConnections = 0
 
xiiTime m_CloseAppTimeout
 
xiiTime m_TimeTillClosing
 

Additional Inherited Members

- Static Public Member Functions inherited from xiiApplication
static xiiApplicationGetApplicationInstance ()
 Returns the one instance of xiiApplication that is available.
 
- Protected Attributes inherited from xiiApplication
bool m_bWasQuitRequested = false
 

Detailed Description

A stand-alone application for the xiiFileServer.

If XII_USE_QT is defined, the GUI from the EditorPluginFileserve is used. Otherwise the server runs as a console application.

If the command line option "-fs_wait_timeout seconds" is specified, the server will wait for a limited time for any client to connect and close automatically, if no connection is established. Once a client connects, the timeout becomes irrelevant. If the command line option "-fs_close_timeout seconds" is specified, the application will automatically shut down when no client is connected anymore and a certain timeout is reached. Once a client connects, the timeout is reset. This timeout has no effect as long as no client has connected.

Member Function Documentation

◆ AfterCoreSystemsStartup()

void xiiFileserverApp::AfterCoreSystemsStartup ( )
overridevirtual

This function is called after basic engine initialization has been done.

xiiApplication will automatically call xiiStartup::StartupCoreSystems() to initialize the application. This function can be overridden to do additional application specific initialization. To startup entire subsystems, you should however use the features provided by xiiStartup and xiiSubSystem.

Reimplemented from xiiApplication.

◆ BeforeCoreSystemsShutdown()

void xiiFileserverApp::BeforeCoreSystemsShutdown ( )
overridevirtual

This function is called after the application main loop has run for the last time, before engine deinitialization.

Override this function to do application specific deinitialization that still requires a running engine. After this function returns xiiStartup::ShutdownCoreSystems() is called and thus everything, including allocators, is shut down. To shut down entire subsystems, you should, however, use the features provided by xiiStartup and xiiSubSystem.

Reimplemented from xiiApplication.

◆ BeforeCoreSystemsStartup()

xiiResult xiiFileserverApp::BeforeCoreSystemsStartup ( )
overridevirtual

This function is called before any kind of engine initialization is done.

Override this function to be able to configure subsystems, before they are initialized. After this function returns, xiiStartup::StartupCoreSystems() is automatically called. If you need to set up custom allocators, this is the place to do this.

Reimplemented from xiiApplication.

◆ Run()

xiiApplication::Execution xiiFileserverApp::Run ( )
overridevirtual

Main run function which is called periodically. This function must be overridden.

Return Execution::Quit when the application should quit. You may set a return code via SetReturnCode() beforehand.

Implements xiiApplication.


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