gem5  v21.2.0.0
Classes | Namespaces | Macros | Enumerations | Functions
phase.hh File Reference
#include <iostream>
#include <typeinfo>
#include <vector>

Go to the source code of this file.

Classes

class  tlm::tlm_phase
 

Namespaces

 tlm
 

Macros

#define SC_CONCAT_HELPER_(a, b)   SC_CONCAT_HELPER_DEFERRED_(a, b)
 
#define SC_CONCAT_HELPER_DEFERRED_(a, b)   SC_CONCAT_HELPER_MORE_DEFERRED_(a, b)
 
#define SC_CONCAT_HELPER_MORE_DEFERRED_(a, b)   a ## b
 
#define SC_STRINGIFY_HELPER_(a)   SC_STRINGIFY_HELPER_DEFERRED_(a)
 
#define SC_STRINGIFY_HELPER_DEFERRED_(a)   SC_STRINGIFY_HELPER_MORE_DEFERRED_(a)
 
#define SC_STRINGIFY_HELPER_MORE_DEFERRED_(a)   #a
 
#define TLM_DECLARE_EXTENDED_PHASE(name_arg)
 
#define DECLARE_EXTENDED_PHASE(NameArg)   TLM_DECLARE_EXTENDED_PHASE(NameArg)
 

Enumerations

enum  tlm::tlm_phase_enum {
  tlm::UNINITIALIZED_PHASE = 0, tlm::BEGIN_REQ = 1, tlm::END_REQ, tlm::BEGIN_RESP,
  tlm::END_RESP
}
 

Functions

std::ostream & tlm::operator<< (std::ostream &s, const tlm_phase &p)
 

Macro Definition Documentation

◆ DECLARE_EXTENDED_PHASE

#define DECLARE_EXTENDED_PHASE (   NameArg)    TLM_DECLARE_EXTENDED_PHASE(NameArg)

Definition at line 105 of file phase.hh.

◆ SC_CONCAT_HELPER_

#define SC_CONCAT_HELPER_ (   a,
  b 
)    SC_CONCAT_HELPER_DEFERRED_(a, b)

Definition at line 27 of file phase.hh.

◆ SC_CONCAT_HELPER_DEFERRED_

#define SC_CONCAT_HELPER_DEFERRED_ (   a,
  b 
)    SC_CONCAT_HELPER_MORE_DEFERRED_(a, b)

Definition at line 28 of file phase.hh.

◆ SC_CONCAT_HELPER_MORE_DEFERRED_

#define SC_CONCAT_HELPER_MORE_DEFERRED_ (   a,
  b 
)    a ## b

Definition at line 29 of file phase.hh.

◆ SC_STRINGIFY_HELPER_

#define SC_STRINGIFY_HELPER_ (   a)    SC_STRINGIFY_HELPER_DEFERRED_(a)

Definition at line 31 of file phase.hh.

◆ SC_STRINGIFY_HELPER_DEFERRED_

#define SC_STRINGIFY_HELPER_DEFERRED_ (   a)    SC_STRINGIFY_HELPER_MORE_DEFERRED_(a)

Definition at line 32 of file phase.hh.

◆ SC_STRINGIFY_HELPER_MORE_DEFERRED_

#define SC_STRINGIFY_HELPER_MORE_DEFERRED_ (   a)    #a

Definition at line 33 of file phase.hh.

◆ TLM_DECLARE_EXTENDED_PHASE

#define TLM_DECLARE_EXTENDED_PHASE (   name_arg)
Value:
static class SC_CONCAT_HELPER_(tlm_phase_, name_arg) : \
{ \
typedef SC_CONCAT_HELPER_(tlm_phase_, name_arg) this_type; \
public: \
SC_CONCAT_HELPER_(tlm_phase_, name_arg)() : \
/* register extended phase */ \
::tlm::tlm_phase(typeid(*this), SC_STRINGIFY_HELPER_(name_arg)) \
{} \
\
static const this_type &get_phase() \
/* needed only for IEEE 1666-2011 */ \
{ \
static this_type this_; \
return this_; \
} \
} const name_arg

Definition at line 85 of file phase.hh.

tlm::tlm_phase
Definition: phase.hh:47
SC_STRINGIFY_HELPER_
#define SC_STRINGIFY_HELPER_(a)
Definition: phase.hh:31
SC_CONCAT_HELPER_
#define SC_CONCAT_HELPER_(a, b)
Definition: phase.hh:27

Generated on Tue Dec 21 2021 11:34:49 for gem5 by doxygen 1.8.17