StateControllerImpl.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "StateController.h"
4 
5 #include <condition_variable>
6 #include <mutex>
7 #include <queue>
8 
9 namespace armarx
10 {
11 
13  {
15 
16  /*! \brief Buffer for all events that are
17  delayed due to unbreakable substates.
18 
19  This buffer only holds events that are processed by this state.
20  */
21  std::queue<EventPtr> __unbreakableBuffer;
23  std::vector< std::pair<StateControllerPtr, EventPtr> > __eventBuffer;
25 
26  bool __finished = false;
27  mutable std::mutex __finishedMutex;
28  mutable std::condition_variable __finishedCondition;
29 
30  /**
31  * @brief localProfiler local instance of armarx::Profiler::Profiler which does nothing by default
32  *
33  * This instance can be changed via armarx::StateController::setProfilerRecursive() (\see armarx::RemoteStateOfferer)
34  */
36  bool profilersDisabled = false;
37  };
38 
39 }
armarx::StateController::Impl::__unbreakableBuffer
std::queue< EventPtr > __unbreakableBuffer
Buffer for all events that are delayed due to unbreakable substates.
Definition: StateControllerImpl.h:21
armarx::StateController::Impl::__finished
bool __finished
Definition: StateControllerImpl.h:26
armarx::StateController::TransitionFunctionMap
std::map< std::string, transitionFunction > TransitionFunctionMap
Definition: StateController.h:60
armarx::Profiler::ProfilerSet
std::set< ProfilerPtr > ProfilerSet
Definition: Profiler.h:41
armarx::StateController::Impl::profilersDisabled
bool profilersDisabled
Definition: StateControllerImpl.h:36
armarx::StateController::Impl::__eventBuffer
std::vector< std::pair< StateControllerPtr, EventPtr > > __eventBuffer
Definition: StateControllerImpl.h:23
StateController.h
armarx::StateController::Impl::transitionFunctions
TransitionFunctionMap transitionFunctions
Definition: StateControllerImpl.h:24
armarx::StateController::Impl::__eventBufferedDueToUnbreakableState
bool __eventBufferedDueToUnbreakableState
Definition: StateControllerImpl.h:22
armarx::StateController::Impl
Definition: StateControllerImpl.h:12
armarx::StateController::Impl::__finishedMutex
std::mutex __finishedMutex
Definition: StateControllerImpl.h:27
armarx::StateController::Impl::__runningTask
IceUtil::Handle< RunningTask< StateController > > __runningTask
Definition: StateControllerImpl.h:14
armarx::StateController::Impl::localProfilers
Profiler::ProfilerSet localProfilers
localProfiler local instance of armarx::Profiler::Profiler which does nothing by default
Definition: StateControllerImpl.h:35
IceUtil::Handle
Definition: forward_declarations.h:29
armarx
This file offers overloads of toIce() and fromIce() functions for STL container types.
Definition: ArmarXTimeserver.cpp:28
armarx::StateController::Impl::__finishedCondition
std::condition_variable __finishedCondition
Definition: StateControllerImpl.h:28