20#ifndef __SYSTEMC_EXT_TLM_CORE_2_GENERIC_PAYLOAD_PHASE_HH__
21#define __SYSTEMC_EXT_TLM_CORE_2_GENERIC_PAYLOAD_PHASE_HH__
27#define SC_CONCAT_HELPER_(a, b) SC_CONCAT_HELPER_DEFERRED_(a, b)
28#define SC_CONCAT_HELPER_DEFERRED_(a, b) SC_CONCAT_HELPER_MORE_DEFERRED_(a, b)
29#define SC_CONCAT_HELPER_MORE_DEFERRED_(a, b) a ## b
31#define SC_STRINGIFY_HELPER_(a) SC_STRINGIFY_HELPER_DEFERRED_(a)
32#define SC_STRINGIFY_HELPER_DEFERRED_(a) SC_STRINGIFY_HELPER_MORE_DEFERRED_(a)
33#define SC_STRINGIFY_HELPER_MORE_DEFERRED_(a) #a
56 operator unsigned int()
const {
return m_id; }
85#define TLM_DECLARE_EXTENDED_PHASE(name_arg) \
86static class SC_CONCAT_HELPER_(tlm_phase_, name_arg) : \
87 public ::tlm::tlm_phase \
89 typedef SC_CONCAT_HELPER_(tlm_phase_, name_arg) this_type; \
91 SC_CONCAT_HELPER_(tlm_phase_, name_arg)() : \
93 ::tlm::tlm_phase(typeid(*this), SC_STRINGIFY_HELPER_(name_arg)) \
96 static const this_type &get_phase() \
99 static this_type this_; \
105#define DECLARE_EXTENDED_PHASE(NameArg) TLM_DECLARE_EXTENDED_PHASE(NameArg)
const char * get_name() const
tlm_phase & operator=(tlm_phase_enum standard)
std::ostream & operator<<(std::ostream &s, const tlm_phase &p)
const std::string & name()