Process

Engine/source/core/util/journal/process.h

Event generation signal.

More...

Public Friends

Public Static Functions

get the current return status code we've been asked to end with.

bool
init()

Trigger the registered init functions.

notify(Delegate< void()> del, F32 order)
notify(SignalSlot< void()> & slot, F32 order)
notify(T func, F32 order)
notify(T obj, U func, F32 order)
notifyCommandLine(Delegate< void(S32, const char **)> del, F32 order)
notifyCommandLine(T func, F32 order)
notifyInit(Delegate< bool()> del, F32 order)
notifyInit(T func, F32 order)
notifyShutdown(Delegate< bool(void)> del, F32 order)
notifyShutdown(T func, F32 order)
bool

Trigger the ProcessSignal and replay journal events.

remove(T func)
remove(T obj, U func)

Ask the processEvents() function to shutdown.

bool

Trigger the registered shutdown functions.

Private Static Functions

get()

Access method will construct the singleton as necessary.

handleCommandLine(S32 argc, const char ** argv)

Trigger the registered command line handling functions.

Private Functions

Private constructor.

Detailed Description

Event generation signal.

Objects that generate events need to register a callback with this signal and should only generate events from within the callback.

This signal is triggered from the ProcessEvents() method.

Public Friends

Private Attributes

bool _RequestShutdown 
S32 _ReturnStatus 
Signal< void(S32, const char **)> _signalCommandLine 
Signal< bool()> _signalInit 
Signal< void()> _signalProcess 
Signal< bool()> _signalShutdown 

Public Static Functions

getReturnStatus()

get the current return status code we've been asked to end with.

init()

Trigger the registered init functions.

notify(Delegate< void()> del, F32 order)

notify(SignalSlot< void()> & slot, F32 order)

notify(T func, F32 order)

notify(T obj, U func, F32 order)

notifyCommandLine(Delegate< void(S32, const char **)> del, F32 order)

notifyCommandLine(T func, F32 order)

notifyInit(Delegate< bool()> del, F32 order)

notifyInit(T func, F32 order)

notifyShutdown(Delegate< bool(void)> del, F32 order)

notifyShutdown(T func, F32 order)

processEvents()

Trigger the ProcessSignal and replay journal events.

The ProcessSignal is triggered during which all events are generated, journaled, and delivered using the EventSignal classes. Event producers should only generate events from within the function they register with ProcessSignal. ProcessSignal is also triggered during event playback, though all new events are thrown away so as not to interfere with journal playback. This function returns false if Process::requestShutdown() has been called, otherwise it returns true.

NOTE: This should only be called from main loops - it should really be private, but we need to sort out how to handle the unit test cases

remove(Delegate< void()> del)

remove(T func)

remove(T obj, U func)

requestShutdown(S32 status)

Ask the processEvents() function to shutdown.

shutdown()

Trigger the registered shutdown functions.

Private Static Functions

get()

Access method will construct the singleton as necessary.

handleCommandLine(S32 argc, const char ** argv)

Trigger the registered command line handling functions.

Private Functions

Process()

Private constructor.