TLM-2.0  2.0.4
Accellera TLM-2.0 proof-of-concept library
tlm_phase.h File Reference
#include <string>
#include <iostream>
#include <typeinfo>
#include <vector>
#include "sysc/kernel/sc_cmnhdr.h"
#include "sysc/kernel/sc_macros.h"
Include dependency graph for tlm_phase.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  tlm::tlm_phase
 

Namespaces

 tlm
 

Macros

#define TLM_DECLARE_EXTENDED_PHASE(name_arg)
 
#define DECLARE_EXTENDED_PHASE(NameArg)   TLM_DECLARE_EXTENDED_PHASE( NameArg )
 

Functions

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

Variables

 UNINITIALIZED_PHASE =0
 
 BEGIN_REQ =1
 
 END_REQ
 
 BEGIN_RESP
 

Macro Definition Documentation

◆ DECLARE_EXTENDED_PHASE

#define DECLARE_EXTENDED_PHASE (   NameArg)    TLM_DECLARE_EXTENDED_PHASE( NameArg )

Definition at line 102 of file tlm_phase.h.

◆ TLM_DECLARE_EXTENDED_PHASE

#define TLM_DECLARE_EXTENDED_PHASE (   name_arg)
Value:
static class SC_CONCAT_HELPER_(tlm_phase_, name_arg) \
: public ::tlm::tlm_phase \
{ \
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
#define SC_STRINGIFY_HELPER_(Arg)
#define SC_CONCAT_HELPER_(a, b)

Definition at line 86 of file tlm_phase.h.

Variable Documentation

◆ BEGIN_REQ

BEGIN_REQ =1

Definition at line 36 of file tlm_phase.h.

◆ BEGIN_RESP

BEGIN_RESP

Definition at line 36 of file tlm_phase.h.

◆ END_REQ

END_REQ

Definition at line 36 of file tlm_phase.h.

◆ UNINITIALIZED_PHASE

UNINITIALIZED_PHASE =0

Definition at line 35 of file tlm_phase.h.