gem5  v20.1.0.0
Private Types | Private Member Functions | Static Private Member Functions | Private Attributes | Friends | List of all members
tlm_utils::instance_specific_extension_container Class Reference

#include <instance_specific_extensions_int.h>

Private Types

typedef void release_fn(instance_specific_extension_carrier *, void *)
 

Private Member Functions

 instance_specific_extension_container ()
 
 ~instance_specific_extension_container ()
 
void resize ()
 
void inc_use_count ()
 
void dec_use_count ()
 
void attach_carrier (instance_specific_extension_carrier *, void *txn, release_fn *)
 
instance_specific_extensions_per_accessorget_accessor (unsigned int index)
 

Static Private Member Functions

static instance_specific_extension_containercreate ()
 

Private Attributes

std::vector< instance_specific_extensions_per_accessor * > m_ispex_per_accessor
 
unsigned int use_count
 
void * m_txn
 
release_fnm_release_fn
 
instance_specific_extension_carrierm_carrier
 
instance_specific_extension_containernext
 

Friends

class instance_specific_extension_accessor
 
class instance_specific_extension_carrier
 
class instance_specific_extension_container_pool
 
class instance_specific_extensions_per_accessor
 

Detailed Description

Definition at line 124 of file instance_specific_extensions_int.h.

Member Typedef Documentation

◆ release_fn

typedef void tlm_utils::instance_specific_extension_container::release_fn(instance_specific_extension_carrier *, void *)
private

Definition at line 131 of file instance_specific_extensions_int.h.

Constructor & Destructor Documentation

◆ instance_specific_extension_container()

tlm_utils::instance_specific_extension_container::instance_specific_extension_container ( )
private

Definition at line 162 of file instance_specific_extensions.cc.

References resize().

◆ ~instance_specific_extension_container()

tlm_utils::instance_specific_extension_container::~instance_specific_extension_container ( )
private

Definition at line 191 of file instance_specific_extensions.cc.

References ArmISA::i, and m_ispex_per_accessor.

Member Function Documentation

◆ attach_carrier()

void tlm_utils::instance_specific_extension_container::attach_carrier ( instance_specific_extension_carrier carrier,
void *  txn,
release_fn rel_fn 
)
private

Definition at line 170 of file instance_specific_extensions.cc.

References m_carrier, m_release_fn, and m_txn.

◆ create()

instance_specific_extension_container * tlm_utils::instance_specific_extension_container::create ( )
staticprivate

Definition at line 156 of file instance_specific_extensions.cc.

References create().

Referenced by create().

◆ dec_use_count()

void tlm_utils::instance_specific_extension_container::dec_use_count ( )
private

◆ get_accessor()

instance_specific_extensions_per_accessor * tlm_utils::instance_specific_extension_container::get_accessor ( unsigned int  index)
private

Definition at line 216 of file instance_specific_extensions.cc.

References m_ispex_per_accessor.

◆ inc_use_count()

void tlm_utils::instance_specific_extension_container::inc_use_count ( )
private

◆ resize()

void tlm_utils::instance_specific_extension_container::resize ( )
private

Friends And Related Function Documentation

◆ instance_specific_extension_accessor

Definition at line 126 of file instance_specific_extensions_int.h.

◆ instance_specific_extension_carrier

Definition at line 127 of file instance_specific_extensions_int.h.

◆ instance_specific_extension_container_pool

Definition at line 128 of file instance_specific_extensions_int.h.

◆ instance_specific_extensions_per_accessor

Definition at line 129 of file instance_specific_extensions_int.h.

Referenced by resize().

Member Data Documentation

◆ m_carrier

instance_specific_extension_carrier* tlm_utils::instance_specific_extension_container::m_carrier
private

Definition at line 153 of file instance_specific_extensions_int.h.

Referenced by attach_carrier(), and dec_use_count().

◆ m_ispex_per_accessor

std::vector<instance_specific_extensions_per_accessor *> tlm_utils::instance_specific_extension_container::m_ispex_per_accessor
private

◆ m_release_fn

release_fn* tlm_utils::instance_specific_extension_container::m_release_fn
private

Definition at line 152 of file instance_specific_extensions_int.h.

Referenced by attach_carrier(), and dec_use_count().

◆ m_txn

void* tlm_utils::instance_specific_extension_container::m_txn
private

Definition at line 151 of file instance_specific_extensions_int.h.

Referenced by attach_carrier(), and dec_use_count().

◆ next

instance_specific_extension_container* tlm_utils::instance_specific_extension_container::next
private

◆ use_count

unsigned int tlm_utils::instance_specific_extension_container::use_count
private

Definition at line 150 of file instance_specific_extensions_int.h.

Referenced by dec_use_count(), and inc_use_count().


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

Generated on Wed Sep 30 2020 14:03:13 for gem5 by doxygen 1.8.17