SMACC2
Classes | Namespaces | Typedefs | Functions
introspection.hpp File Reference
#include <boost/statechart/event.hpp>
#include <boost/statechart/simple_state.hpp>
#include <boost/statechart/state.hpp>
#include <boost/mpl/for_each.hpp>
#include <boost/mpl/list.hpp>
#include <boost/mpl/transform.hpp>
#include <rclcpp/rclcpp.hpp>
#include <typeinfo>
#include <smacc2/introspection/smacc_state_info.hpp>
#include <smacc2/introspection/smacc_type_info.hpp>
#include <smacc2/smacc_types.hpp>
#include <cxxabi.h>
#include "smacc2_msgs/msg/smacc_transition.hpp"
#include <smacc2/introspection/smacc_state_machine_info.hpp>
Include dependency graph for introspection.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  smacc2::introspection::typelist<... >
 
class  smacc2::introspection::HasEventLabel< T >
 
class  smacc2::introspection::HasAutomaticTransitionTag< T >
 
class  smacc2::introspection::HasAutomaticTransitionType< T >
 
struct  smacc2::introspection::type_< T >
 
struct  smacc2::introspection::add_type_wrapper< T >
 
struct  smacc2::introspection::CheckType< TTransition >
 

Namespaces

namespace  smacc2
 
namespace  smacc2::introspection
 

Typedefs

typedef std::allocator< boost::statechart::none > smacc2::introspection::SmaccAllocator
 
typedef boost::mpl::list< SUCCESS, ABORT, CANCEL, CONTINUELOOP, ENDLOOP > smacc2::introspection::DEFAULT_TRANSITION_TYPES
 

Functions

void smacc2::introspection::transitionInfoToMsg (const SmaccTransitionInfo &transition, smacc2_msgs::msg::SmaccTransition &transitionMsg)
 
template<class T >
auto smacc2::introspection::optionalNodeHandle (std::shared_ptr< T > &obj) -> T *
 
template<class T >
auto smacc2::introspection::optionalNodeHandle (boost::intrusive_ptr< T > &obj) -> T *
 
template<class T >
auto smacc2::introspection::optionalNodeHandle (T *obj) -> T *
 
std::string smacc2::introspection::demangleSymbol (const std::string &name)
 
std::string smacc2::introspection::demangleSymbol (const char *name)
 
template<typename T >
std::string smacc2::introspection::demangleSymbol ()
 
template<class T >
std::string smacc2::introspection::demangledTypeName ()
 
std::string smacc2::introspection::demangleType (const std::type_info *tinfo)
 
std::string smacc2::introspection::demangleType (const std::type_info &tinfo)
 
template<typename T >
std::enable_if< HasEventLabel< T >::value, void >::type smacc2::introspection::EventLabel (std::string &label)
 
template<typename T >
std::enable_if<!HasEventLabel< T >::value, void >::type smacc2::introspection::EventLabel (std::string &label)
 
template<typename T >
std::enable_if< HasAutomaticTransitionTag< T >::value, void >::type smacc2::introspection::automaticTransitionTag (std::string &transition_name)
 
template<typename T >
std::enable_if<!HasAutomaticTransitionTag< T >::value, void >::type smacc2::introspection::automaticTransitionTag (std::string &transition_name)
 
template<typename T >
std::enable_if< HasAutomaticTransitionType< T >::value, void >::type smacc2::introspection::automaticTransitionType (std::string &transition_type)
 
template<typename T >
std::enable_if<!HasAutomaticTransitionType< T >::value, void >::type smacc2::introspection::automaticTransitionType (std::string &transition_type)
 
template<typename TTransition >
static std::string smacc2::introspection::getTransitionType ()