gem5 v25.0.0.1
Loading...
Searching...
No Matches
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 125 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 132 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 161 of file instance_specific_extensions.cc.

References m_carrier, m_release_fn, m_txn, next, resize(), and use_count.

◆ ~instance_specific_extension_container()

tlm_utils::instance_specific_extension_container::~instance_specific_extension_container ( )
private

Definition at line 190 of file instance_specific_extensions.cc.

References 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

◆ create()

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

◆ 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

◆ inc_use_count()

void tlm_utils::instance_specific_extension_container::inc_use_count ( )
private

Definition at line 198 of file instance_specific_extensions.cc.

References use_count.

◆ resize()

void tlm_utils::instance_specific_extension_container::resize ( )
private

◆ instance_specific_extension_accessor

◆ instance_specific_extension_carrier

◆ instance_specific_extension_container_pool

◆ instance_specific_extensions_per_accessor

Member Data Documentation

◆ m_carrier

instance_specific_extension_carrier* tlm_utils::instance_specific_extension_container::m_carrier
private

◆ 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

◆ m_txn

void* tlm_utils::instance_specific_extension_container::m_txn
private

◆ 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

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

Generated on Sat Oct 18 2025 08:07:55 for gem5 by doxygen 1.14.0