gem5  v22.1.0.0
Public Types | Public Member Functions | Private Attributes | List of all members
tlm_utils::instance_specific_extensions_per_accessor Class Reference

#include <instance_specific_extensions_int.h>

Public Types

typedef instance_specific_extension_container container_type
 

Public Member Functions

 instance_specific_extensions_per_accessor (container_type *container)
 
template<typename T >
T * set_extension (T *ext)
 
ispex_baseset_extension (unsigned int index, ispex_base *ext)
 
template<typename T >
void get_extension (T *&ext) const
 
ispex_baseget_extension (unsigned int index) const
 
template<typename T >
void clear_extension (const T *)
 
void clear_extension (unsigned int index)
 
void resize_extensions ()
 

Private Attributes

tlm::tlm_array< ispex_base * > m_extensions
 
container_typem_container
 

Detailed Description

Definition at line 69 of file instance_specific_extensions_int.h.

Member Typedef Documentation

◆ container_type

Definition at line 72 of file instance_specific_extensions_int.h.

Constructor & Destructor Documentation

◆ instance_specific_extensions_per_accessor()

tlm_utils::instance_specific_extensions_per_accessor::instance_specific_extensions_per_accessor ( container_type container)
inlineexplicit

Definition at line 75 of file instance_specific_extensions_int.h.

Member Function Documentation

◆ clear_extension() [1/2]

template<typename T >
void tlm_utils::instance_specific_extensions_per_accessor::clear_extension ( const T *  )
inline

Definition at line 100 of file instance_specific_extensions_int.h.

◆ clear_extension() [2/2]

void tlm_utils::instance_specific_extensions_per_accessor::clear_extension ( unsigned int  index)

◆ get_extension() [1/2]

template<typename T >
void tlm_utils::instance_specific_extensions_per_accessor::get_extension ( T *&  ext) const
inline

Definition at line 91 of file instance_specific_extensions_int.h.

References gem5::ArmISA::ext.

◆ get_extension() [2/2]

ispex_base * tlm_utils::instance_specific_extensions_per_accessor::get_extension ( unsigned int  index) const

Definition at line 237 of file instance_specific_extensions.cc.

References gem5::MipsISA::index, and m_extensions.

◆ resize_extensions()

void tlm_utils::instance_specific_extensions_per_accessor::resize_extensions ( )

Definition at line 254 of file instance_specific_extensions.cc.

References m_extensions, and tlm::max_num_extensions().

Referenced by set_extension().

◆ set_extension() [1/2]

template<typename T >
T* tlm_utils::instance_specific_extensions_per_accessor::set_extension ( T *  ext)
inline

Definition at line 81 of file instance_specific_extensions_int.h.

References gem5::ArmISA::ext.

◆ set_extension() [2/2]

ispex_base * tlm_utils::instance_specific_extensions_per_accessor::set_extension ( unsigned int  index,
ispex_base ext 
)

Member Data Documentation

◆ m_container

container_type* tlm_utils::instance_specific_extensions_per_accessor::m_container
private

Definition at line 117 of file instance_specific_extensions_int.h.

Referenced by clear_extension(), and set_extension().

◆ m_extensions

tlm::tlm_array<ispex_base *> tlm_utils::instance_specific_extensions_per_accessor::m_extensions
private

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

Generated on Wed Dec 21 2022 10:25:12 for gem5 by doxygen 1.9.1