OpenRTM-aist-Python 2.0.0
Public Member Functions | List of all members
OpenRTM_aist.FsmActionListener.PostFsmActionListener Class Reference

More...

Public Member Functions

def __init__ (self)
 
def __del__ (self)
 
def __call__ (self, state, ret)
 
def toString (status)
 

Detailed Description

PostFsmActionListener class

PostFsmActionListener class is a base class for the listener objects which realize callback to hook FSM related post-actions. To hook execution just before a FSM action, the callback object should be defined as follows, and set to RTObject through appropriate callback set function.

 class MyListener
   : public PostFsmActionListener
 {
   std::string m_name;
 public:
   MyListener(const char* name) : m_name(name) {}
   virtual ~MyListener() {}

   virtual void operator()(const char* state_name, ReturnCode\t ret)
   {
     std::cout << "Listner name:  " m_name << std::endl;
     std::cout << "Current state: " state_name << std::endl;
   };
 };
 

The listener class defined above is set to RTObject as follows.

 RTC::ReturnCode_t ConsoleIn::onInitialize()
 {
     addPostFsmActionListener(POST_ON_STATE_CHANGE,
                             new MyListener("init listener"),
                             true);
    :
 

The first argument "POST_ON_STATE_CHANGE" specifies callback hook point, and the following values are available. Not all the callback points are implemented. It depends on the FSM implementations.

The second argument is a pointers to the listener object. The third argument is a flag for automatic object destruction. When "true" is given to the third argument, the given object in second argument is automatically destructed with RTObject. In the "false " case, the ownership of the object is left in the caller side, and then destruction of the object must be done by users' responsibility.

It is good for setting "true" as third argument, if the listener object life span is equals to the RTObject's life cycle. On the otehr hand, if callbacks are required to set/unset depending on its situation, the third argument could be "false". In that case, listener objects pointers must be stored to member variables, and set/unset of the listener objects shoud be paerformed throguh RTObject_impl::addPostFsmActionListener()/removePostFsmActionListener() functions.

Constructor & Destructor Documentation

◆ __init__()

def OpenRTM_aist.FsmActionListener.PostFsmActionListener.__init__ (   self)

Constructor

◆ __del__()

def OpenRTM_aist.FsmActionListener.PostFsmActionListener.__del__ (   self)

Destructor

Member Function Documentation

◆ __call__()

def OpenRTM_aist.FsmActionListener.PostFsmActionListener.__call__ (   self,
  state,
  ret 
)

Virtual Callback function

This is a the Callback function for PostFsmActionListener.

virtual void operator()(const char* state, ReturnCode_t ret) = 0;

◆ toString()

def OpenRTM_aist.FsmActionListener.PostFsmActionListener.toString (   status)

Convert PostFsmActionListenerType into the string.

Convert PostFsmActionListenerType into the string.

Parameters
typeThe target PostFsmActionListenerType for transformation
Returns
Trnasformation result of string representation

The documentation for this class was generated from the following file: