47 #ifndef STD_DO_NOT_ADD_BOOST
48 boost::thread m_Thread;
61 virtual void StartThread();
62 virtual void ProcessThread();
63 virtual void ExitThread();
64 virtual void CloseThread();
66 virtual void WaitWhilePaused();
67 virtual void WaitTillPaused();
68 virtual void WaitForThreadNotifyReady();
69 virtual void StartPause();
70 virtual void ExitPause();
78 virtual void PauseThread(
bool bVal);
79 virtual bool PauseThread();
80 virtual bool ThreadPaused();
82 virtual float StepThreadDuration();
84 virtual void SetupThread();
85 virtual void StepThread();
86 virtual void ShutdownThread();
88 virtual float *GetDataPointer(
const std::string &strDataType);
89 virtual void QueryProperties(CStdPtrArray<TypeProperty> &aryProperties);
boost::interprocess::interprocess_condition m_WaitForSetupCond
Condition used to determine when the IO is setup.
bool m_bWaitingForThreadNotify
Used to signal to the IO thread that we are waiting for their return signal.
Root namespace for the base simulation library for AnimatLab.
A Threaded neural module base class.
bool m_bPauseThread
Set to true to pause the thread processing. Set back to false to resume it.
bool m_bSetupStarted
Set to true once the thread begins its setup.
bool m_bThreadProcessing
True while the io thread processing loop is going on.
bool m_bStopThread
Flags the thread processing loop to exit.
boost::interprocess::interprocess_mutex m_WaitForSetupMutex
Mutex responsible for waiting until the IO is finished setting up.
bool m_bSetupComplete
Set to true once the thread is setup correctly.
bool m_bThreadPaused
Is set to true once the thread loop is paused.
float m_fltStepThreadDuration
The time it takes to perform a step of the IO for all parts in this control.