45 "-1 to profile all hierarchy levels; any positive number to "
46 "stop profiling after a certain depth in the state hierarchy");
53 setTag(
"StatechartContext");
68 StatechartContext::onInitComponent()
93 StatechartContext::onConnectComponent()
113 StatechartContext::onDisconnectComponent()
119 StatechartContext::onExitComponent()
136 return observerMap[observerName]->getDataFields(identifierList);
148 return observerMap[identifier->observerName]->getDataField(identifier);
153 const std::string& channelName)
155 ObserverInterfacePrx obs;
163 ObserverInterfacePrx::checkedCast(obs);
196 StringVariantContainerBaseMap startParameters)
224 return selectedStatechartProfile;
230 selectedStatechartProfile = value;
The ChannelRef class is a reference to a channel on an Observer.
ComponentPropertyDefinitions(std::string prefix, bool hasObjectNameParameter=true)
std::string getConfigIdentifier()
Retrieve config identifier for this component as set in constructor.
DataFieldIdentifier provide the basis to identify data field within a distributed ArmarX scenario.
std::string getObserverName() const
Retrieve observer name.
std::string getChannelName() const
Retrieve channel name.
std::string getDataFieldName() const
Retrieve datafield name.
The DatafieldRef class is similar to the ChannelRef, but points to a specific Datafield instead of to...
void setTag(const LogTag &tag)
void offeringTopic(const std::string &name)
Registers a topic for retrival after initialization.
Profiler::ProfilerPtr getProfiler() const
getProfiler returns an instance of armarx::Profiler
TopicProxyType getTopic(const std::string &name)
Returns a proxy of the specified topic.
bool usingProxy(const std::string &name, const std::string &endpoints="")
Registers a proxy for retrieval after initialization and adds it to the dependency list.
std::string getName() const
Retrieve name of object.
Ice::ObjectPrx getProxy(long timeoutMs=0, bool waitForScheduler=true) const
Returns the proxy of this object (optionally it waits for the proxy)
ArmarXManagerPtr getArmarXManager() const
Returns the ArmarX manager used to add and remove components.
static void _setStatechartContext(StatechartContext *__context)
std::string prefix
Prefix of the properties such as namespace, domain, component name, etc.
PropertyDefinition< PropertyType > & defineOptionalProperty(const std::string &name, PropertyType defaultValue, const std::string &description="", PropertyDefinitionBase::PropertyConstness constness=PropertyDefinitionBase::eConstant)
The StatechartContextPropertyDefinitions class contains properties associated with all statecharts.
StatechartContextPropertyDefinitions(std::string prefix)
std::string reportingTopic
TimedVariantBaseList getDataListFromObserver(std::string observerName, const DataFieldIdentifierBaseList &identifierList) override
void startStatechart()
startStatechart actives both, the toplevel startchart stored in the variable statechart and the State...
~StatechartContext() override
VariantBasePtr getDataFromObserver(const DataFieldIdentifierBasePtr &identifier) override
void setAutoEnterToplevelState(bool autoEnter)
setAutoStartStatechart controls whether the toplevelstate is automatically entered,...
DatafieldRefPtr getDatafieldRef(const DataFieldIdentifier &datafieldIdentifier) override
std::unordered_map< std::string, ObserverInterfacePrx > observerMap
StatechartEventDistributorPtr eventDistributor
The EventListenerInterface instance, that receives events from observers and redirects them to the co...
bool setToplevelState(const armarx::StatePtr &newToplevelState, StringVariantContainerBaseMap startParameters=StringVariantContainerBaseMap())
setToplevelState initializes newToplevelState with the current StatechartContext and the current Stat...
virtual void onExitStatechart()
onExitStatechart can be implemented by subclasses
SystemObserverInterfacePrx systemObserverPrx
bool autoEnterToplevelState
StatechartManagerPtr statechartManager
ConditionHandlerInterfacePrx conditionHandlerPrx
virtual void onInitStatechart()=0
onInitStatechart this method is called when the statechart is started.
PropertyDefinitionsPtr createPropertyDefinitions() override
virtual void onConnectStatechart()=0
onConnectStatechart is called before armarx::StatechartContext::startStatechart() and after armarx::S...
virtual void onInitStatechartContext()
onInitStatechartonInitStatechartContext can be implemented by subclasses
Profiler::ProfilerPtr stateReporter
ChannelRefPtr getChannelRef(const std::string &observerName, const std::string &channelName) override
void setReportingTopic(std::string reportingTopic)
virtual void onConnectStatechartContext()
onConnectStatechartContext can be implemented by subclasses
const StatechartProfilePtr & getSelectedStatechartProfile() const
void setSelectedStatechartProfile(const StatechartProfilePtr &value)
#define ARMARX_DEBUG
The logging level for output that is only interesting while debugging.
#define ARMARX_VERBOSE
The logging level for verbose information.
std::shared_ptr< LoggingStrategy > LoggingStrategyPtr
This file offers overloads of toIce() and fromIce() functions for STL container types.
IceInternal::Handle< DataFieldIdentifierBase > DataFieldIdentifierBasePtr
IceInternal::Handle< State > StatePtr
IceInternal::Handle< ChannelRef > ChannelRefPtr
::std::vector<::armarx::DataFieldIdentifierBasePtr > DataFieldIdentifierBaseList
IceInternal::Handle< DatafieldRef > DatafieldRefPtr
IceUtil::Handle< class PropertyDefinitionContainer > PropertyDefinitionsPtr
PropertyDefinitions smart pointer type.
std::shared_ptr< class StatechartProfile > StatechartProfilePtr
const LogSender::manipulator flush
::IceInternal::Handle<::armarx::VariantBase > VariantBasePtr