30  RCLCPP_INFO_STREAM(
getLogger(), 
"TRANSITION RULE TRIGGERED: " << transitionType->getFullName());
 
   35  if (currstateinfo != 
nullptr)
 
   38    for (
auto & transition : currstateinfo->transitions_)
 
   40      std::string transitionCandidateName = transition.transitionTypeInfo->getFullName();
 
   43      if (transitionType->getFullName() == transitionCandidateName)
 
   53      "Transition happened, from current state " 
   54        << currstateinfo->getDemangledFullName()
 
   55        << 
" but there is not any transitioninfo match available to publish transition: " 
   56        << transitionType->getFullName());
 
   59    auto stateinfo = currstateinfo;
 
   61    for (
auto & transition : currstateinfo->transitions_)
 
   63      std::string transitionCandidateName = transition.transitionTypeInfo->getFullName();
 
   64      RCLCPP_ERROR_STREAM(
getLogger(), 
"- candidate transition: " << transitionCandidateName);
 
   67    RCLCPP_ERROR(
getLogger(), 
"Ancestors candidates: ");
 
   69    std::list<const SmaccStateInfo *> ancestors;
 
   70    stateinfo->getAncestors(ancestors);
 
   72    for (
auto & ancestor : ancestors)
 
   74      RCLCPP_ERROR_STREAM(
getLogger(), 
" * Ancestor " << ancestor->getDemangledFullName() << 
":");
 
   75      for (
auto & transition : ancestor->transitions_)
 
   77        std::string transitionCandidateName = transition.transitionTypeInfo->getFullName();
 
   78        RCLCPP_ERROR_STREAM(
getLogger(), 
"- candidate transition: " << transitionCandidateName);
 
   79        if (transitionType->getFullName() == transitionCandidateName)
 
   89      getLogger(), 
"Transition happened, but current state was not set. Transition candidates:");
 
void publishTransition(const SmaccTransitionInfo &transitionInfo)
 
rclcpp::Logger getLogger()
 
virtual std::string getClassName()
 
virtual ISmaccStateMachine & getStateMachine()=0
 
const smacc2::introspection::SmaccStateInfo * stateInfo_
 
void notifyTransitionFromTransitionTypeInfo(std::shared_ptr< smacc2::introspection::TypeInfo > &transitionTypeInfo)
 
std::shared_ptr< TypeInfo > Ptr
 
std::string demangleSymbol()