|
i6engine
1.0
|
Part of the Subsystem that keeps the whole module running. More...
#include <D:/Projekte/i6engine/libs/i6engine-core/include/i6engine/core/subsystem/ModuleController.h>
Public Member Functions | |
| ModuleController (Subsystem sub) | |
| Constructs a new ModuleController with the given subsystem type. More... | |
| virtual | ~ModuleController () |
| Destructor. More... | |
| void | startThreadTicking (const uint32_t lngFrameTime) |
| Starts the thread synchronously of the subsystem and tells the SubSystemController about completion. More... | |
| void | startThreadWaiting (const std::set< Subsystem > &waitingFor) |
| Starts the thread synchronously of the subsystem and tells the SubSystemController about completion. More... | |
| uint32_t | getFrameTime () const |
| Gets the frametime of this Subsystem. More... | |
| void | setController (SubSystemController *ssc, EngineCoreController *ecc, MessagingController *mc) |
| registers necessary controllers for this Subsystem More... | |
| virtual void | OnThreadStart ()=0 |
| Called just after the Controller got created. More... | |
| virtual void | Tick ()=0 |
| Called repeatedly according to the frametime. More... | |
| virtual void | ShutDown ()=0 |
| Called to Shutdown the Module. More... | |
| Subsystem | getSubsystem () const |
Public Member Functions inherited from i6e::core::MessageSubscriber | |
| MessageSubscriber () | |
| Standard constructor. More... | |
| virtual | ~MessageSubscriber () |
| Destructor. More... | |
| void | receiveMessage (const Message::Ptr &msg) |
| This method is called from the MessagingController. It stores incoming messages in a local buffer. More... | |
| void | notifyNewID (const int64_t id) |
| This method notifies the MessagingController that Messages waiting for this id can now be delivered. More... | |
| void | buffer (const ReceivedMessagePtr &msg) |
| Calls deliverMessageInternal if the message should be delivered now, buffers it if not. More... | |
| void | reset () |
| todo More... | |
| void | addMethod (uint16_t msgType, const boost::function< void(const Message::Ptr &)> &ptrMessageMethod) |
| adds a method for given message type where messages shall be delivered More... | |
| void | removeMethod (uint16_t msgType) |
| removes method for given message type More... | |
Protected Member Functions | |
| void | processMessages () override |
| override of processMessages of MessageSubscriber for waiting subsystems More... | |
Protected Member Functions inherited from i6e::core::MessageSubscriber | |
| void | swapMessageBuffer () |
| This method will swap the double message buffer. For synchronization reasons. More... | |
| bool | updateBuffer () |
| This method delivers all waiting Messages that can now be delivered. More... | |
Protected Attributes | |
| Subsystem | _subsystem |
| the Subsystem More... | |
| uint32_t | _frameTime |
| the frame time of the Subsystem More... | |
| MessagingController * | _messagingController |
| pointer to MessagingController More... | |
Protected Attributes inherited from i6e::core::MessageSubscriber | |
| boost::mutex | _objMessageVectorMutex |
| MessageVector | _objMessageVectorA |
| MessageVector | _objMessageVectorB |
| MessageVector * | _objActiveMessageVector |
| MessageVector * | _objInActiveMessageVector |
| std::map< uint16_t, boost::function< void(const Message::Ptr &)> > | _ptrMessageMethod |
Friends | |
| class | SubSystemController |
Part of the Subsystem that keeps the whole module running.
Definition at line 59 of file ModuleController.h.
| i6e::core::ModuleController::ModuleController | ( | Subsystem | sub | ) |
Constructs a new ModuleController with the given subsystem type.
|
virtual |
Destructor.
|
inline |
Gets the frametime of this Subsystem.
Definition at line 91 of file ModuleController.h.
|
inline |
Definition at line 119 of file ModuleController.h.
|
pure virtual |
Called just after the Controller got created.
Implemented in i6e::modules::InputController.
|
overrideprotectedvirtual |
override of processMessages of MessageSubscriber for waiting subsystems
Reimplemented from i6e::core::MessageSubscriber.
|
inline |
registers necessary controllers for this Subsystem
Definition at line 98 of file ModuleController.h.
|
pure virtual |
Called to Shutdown the Module.
Implemented in i6e::api::Application, and i6e::modules::InputController.
| void i6e::core::ModuleController::startThreadTicking | ( | const uint32_t | lngFrameTime | ) |
Starts the thread synchronously of the subsystem and tells the SubSystemController about completion.
| lngFrameTime | Current frametime. |
| void i6e::core::ModuleController::startThreadWaiting | ( | const std::set< Subsystem > & | waitingFor | ) |
Starts the thread synchronously of the subsystem and tells the SubSystemController about completion.
| waitingFor | Current frametime. |
|
pure virtual |
Called repeatedly according to the frametime.
Implemented in i6e::api::Application, and i6e::modules::InputController.
|
friend |
Definition at line 60 of file ModuleController.h.
|
protected |
the frame time of the Subsystem
Definition at line 132 of file ModuleController.h.
|
protected |
pointer to MessagingController
Definition at line 137 of file ModuleController.h.
|
protected |
the Subsystem
Definition at line 127 of file ModuleController.h.