15namespace introspection
65 std::function<void(std::shared_ptr<smacc::StateReactor>)>
fn;
76 template <
typename TEv>
79 template <
typename TEv>
82 std::shared_ptr<smacc::introspection::SmaccStateReactorInfo>
srInfo_;
93 std::shared_ptr<StateReactorHandler>
srh;
99 std::function<void(std::shared_ptr<smacc::SmaccEventGenerator>)>
fn;
110 template <
typename TEv>
113 std::shared_ptr<smacc::introspection::SmaccEventGeneratorInfo>
egInfo_;
124 std::shared_ptr<EventGeneratorHandler>
egh;
140 typedef std::shared_ptr<SmaccStateInfo>
Ptr;
143 static std::map<const std::type_info *, std::vector<std::shared_ptr<SmaccStateReactorInfo>>>
stateReactorsInfo;
144 static std::map<const std::type_info *, std::vector<std::shared_ptr<SmaccEventGeneratorInfo>>>
eventGeneratorsInfo;
158 SmaccStateInfo(
const std::type_info *tid, std::shared_ptr<SmaccStateInfo> parentState, std::shared_ptr<SmaccStateMachineInfo> stateMachineInfo);
164 void getAncestors(std::list<const SmaccStateInfo *> &ancestorsList)
const;
168 template <
typename StateType>
171 template <
typename EvType>
172 void declareTransition(std::shared_ptr<SmaccStateInfo> &dstState, std::string transitionTag, std::string transitionType,
bool history,
TypeInfo::Ptr transitionTypeInfo);
void configureEventGenerator(std::shared_ptr< smacc::SmaccEventGenerator > eg)
std::shared_ptr< smacc::introspection::SmaccEventGeneratorInfo > egInfo_
std::vector< EventGeneratorCallbackFunctor > callbacks_
std::string getFullPath()
std::shared_ptr< SmaccStateInfo > createChildState()
SmaccStateType getStateLevel()
void getAncestors(std::list< const SmaccStateInfo * > &ancestorsList) const
std::shared_ptr< SmaccStateInfo > Ptr
const std::type_info * tid_
const std::string & toShortName() const
std::vector< std::shared_ptr< SmaccStateInfo > > children_
std::shared_ptr< SmaccStateMachineInfo > stateMachine_
std::string getDemangledFullName() const
static std::map< const std::type_info *, std::vector< std::shared_ptr< SmaccStateReactorInfo > > > stateReactorsInfo
void declareTransition(std::shared_ptr< SmaccStateInfo > &dstState, std::string transitionTag, std::string transitionType, bool history, TypeInfo::Ptr transitionTypeInfo)
std::string demangledStateName
static std::map< const std::type_info *, std::vector< ClientBehaviorInfoEntry > > staticBehaviorInfo
static std::map< const std::type_info *, std::vector< std::shared_ptr< SmaccEventGeneratorInfo > > > eventGeneratorsInfo
std::vector< SmaccTransitionInfo > transitions_
std::string fullStateName
std::shared_ptr< SmaccStateInfo > parentState_
std::vector< StateReactorCallbackFunctor > callbacks_
std::shared_ptr< smacc::introspection::SmaccStateReactorInfo > srInfo_
void configureStateReactor(std::shared_ptr< smacc::StateReactor > sr)
std::shared_ptr< TypeInfo > Ptr
const std::type_info * behaviorType
const std::type_info * orthogonalType
std::function< void(smacc::ISmaccState *)> factoryFunction
std::function< void(std::shared_ptr< smacc::SmaccEventGenerator >)> fn
std::function< void(smacc::ISmaccState *)> factoryFunction
const std::type_info * eventGeneratorType
std::vector< std::shared_ptr< SmaccEventInfo > > sourceEventTypes
std::shared_ptr< TypeInfo > objectTagType
std::shared_ptr< SmaccStateInfo > ownerState
std::shared_ptr< EventGeneratorHandler > egh
std::string getOrthogonalName()
std::string getEventTypeName()
std::shared_ptr< TypeInfo > eventType
std::string getEventSourceName()
const std::type_info * stateReactorType
std::function< void(smacc::ISmaccState *)> factoryFunction
std::shared_ptr< StateReactorHandler > srh
std::vector< std::shared_ptr< SmaccEventInfo > > sourceEventTypes
std::shared_ptr< SmaccStateInfo > ownerState
std::shared_ptr< TypeInfo > objectTagType
std::shared_ptr< SmaccStateInfo > destinyState
std::shared_ptr< SmaccEventInfo > eventInfo
std::string transitionType
smacc::introspection::TypeInfo::Ptr transitionTypeInfo
std::shared_ptr< SmaccStateInfo > sourceState
std::string transitionTag
std::function< void(std::shared_ptr< smacc::StateReactor >)> fn