gem5 v24.0.0.0
Loading...
Searching...
No Matches
sc_core::sc_vector_assembly< T, MT > Class Template Reference

#include <sc_vector.hh>

Public Types

typedef size_t size_type
 
typedef sc_vector_iter< T, sc_member_access< T, MT > > iterator
 
typedef sc_vector_iter< const T, sc_member_access< const T, const MT > > const_iterator
 
typedef MTT::* MemberType
 

Public Member Functions

 sc_vector_assembly (const sc_vector_assembly &other)
 
iterator begin ()
 
iterator end ()
 
const_iterator cbegin () const
 
const_iterator cend () const
 
const_iterator begin () const
 
const_iterator end () const
 
size_type size () const
 
std::vector< sc_object * > get_elements () const
 
iterator::reference operator[] (size_type i)
 
const_iterator::reference operator[] (size_type i) const
 
iterator::reference at (size_type i)
 
const_iterator::reference at (size_type i) const
 
template<typename ContainerType , typename ArgumentType >
iterator bind (sc_vector_assembly< ContainerType, ArgumentType > c)
 
template<typename BindableContainer >
iterator bind (BindableContainer &c)
 
template<typename BindableIterator >
iterator bind (BindableIterator first, BindableIterator last)
 
template<typename BindableIterator >
iterator bind (BindableIterator first, BindableIterator last, iterator from)
 
template<typename BindableIterator >
iterator bind (BindableIterator first, BindableIterator last, typename sc_vector< T >::iterator from)
 
template<typename ContainerType , typename ArgumentType >
iterator operator() (sc_vector_assembly< ContainerType, ArgumentType > c)
 
template<typename ArgumentContainer >
iterator operator() (ArgumentContainer &c)
 
template<typename ArgumentIterator >
iterator operator() (ArgumentIterator first, ArgumentIterator last)
 
template<typename ArgumentIterator >
iterator operator() (ArgumentIterator first, ArgumentIterator last, iterator from)
 
template<typename ArgumentIterator >
iterator operator() (ArgumentIterator first, ArgumentIterator last, typename sc_vector< T >::iterator from)
 

Private Member Functions

 sc_vector_assembly (sc_vector< T > &v, MemberType ptr)
 

Private Attributes

sc_vector< T > * vec_
 
MemberType ptr_
 

Friends

sc_vector_assembly< T, MT > sc_assemble_vector (sc_vector< T > &, MT(T::*))
 

Detailed Description

template<typename T, typename MT>
class sc_core::sc_vector_assembly< T, MT >

Definition at line 606 of file sc_vector.hh.

Member Typedef Documentation

◆ const_iterator

template<typename T , typename MT >
typedef sc_vector_iter< const T, sc_member_access<const T, const MT> > sc_core::sc_vector_assembly< T, MT >::const_iterator

Definition at line 615 of file sc_vector.hh.

◆ iterator

template<typename T , typename MT >
typedef sc_vector_iter<T, sc_member_access<T, MT> > sc_core::sc_vector_assembly< T, MT >::iterator

Definition at line 613 of file sc_vector.hh.

◆ MemberType

template<typename T , typename MT >
typedef MTT::* sc_core::sc_vector_assembly< T, MT >::MemberType

Definition at line 616 of file sc_vector.hh.

◆ size_type

template<typename T , typename MT >
typedef size_t sc_core::sc_vector_assembly< T, MT >::size_type

Definition at line 612 of file sc_vector.hh.

Constructor & Destructor Documentation

◆ sc_vector_assembly() [1/2]

template<typename T , typename MT >
sc_core::sc_vector_assembly< T, MT >::sc_vector_assembly ( const sc_vector_assembly< T, MT > & other)
inline

Definition at line 618 of file sc_vector.hh.

◆ sc_vector_assembly() [2/2]

template<typename T , typename MT >
sc_core::sc_vector_assembly< T, MT >::sc_vector_assembly ( sc_vector< T > & v,
MemberType ptr )
inlineprivate

Definition at line 767 of file sc_vector.hh.

Member Function Documentation

◆ at() [1/2]

template<typename T , typename MT >
iterator::reference sc_core::sc_vector_assembly< T, MT >::at ( size_type i)
inline

◆ at() [2/2]

template<typename T , typename MT >
const_iterator::reference sc_core::sc_vector_assembly< T, MT >::at ( size_type i) const
inline

◆ begin() [1/2]

◆ begin() [2/2]

template<typename T , typename MT >
const_iterator sc_core::sc_vector_assembly< T, MT >::begin ( ) const
inline

◆ bind() [1/5]

template<typename T , typename MT >
template<typename BindableContainer >
iterator sc_core::sc_vector_assembly< T, MT >::bind ( BindableContainer & c)
inline

Definition at line 693 of file sc_vector.hh.

References sc_core::sc_vector_assembly< T, MT >::bind(), and c.

◆ bind() [2/5]

template<typename T , typename MT >
template<typename BindableIterator >
iterator sc_core::sc_vector_assembly< T, MT >::bind ( BindableIterator first,
BindableIterator last )
inline

◆ bind() [3/5]

template<typename T , typename MT >
template<typename BindableIterator >
iterator sc_core::sc_vector_assembly< T, MT >::bind ( BindableIterator first,
BindableIterator last,
iterator from )
inline

◆ bind() [4/5]

template<typename T , typename MT >
template<typename BindableIterator >
iterator sc_core::sc_vector_assembly< T, MT >::bind ( BindableIterator first,
BindableIterator last,
typename sc_vector< T >::iterator from )
inline

◆ bind() [5/5]

template<typename T , typename MT >
template<typename ContainerType , typename ArgumentType >
iterator sc_core::sc_vector_assembly< T, MT >::bind ( sc_vector_assembly< ContainerType, ArgumentType > c)
inline

◆ cbegin()

template<typename T , typename MT >
const_iterator sc_core::sc_vector_assembly< T, MT >::cbegin ( ) const
inline

◆ cend()

template<typename T , typename MT >
const_iterator sc_core::sc_vector_assembly< T, MT >::cend ( ) const
inline

◆ end() [1/2]

◆ end() [2/2]

template<typename T , typename MT >
const_iterator sc_core::sc_vector_assembly< T, MT >::end ( ) const
inline

◆ get_elements()

template<typename T , typename MT >
std::vector< sc_object * > sc_core::sc_vector_assembly< T, MT >::get_elements ( ) const
inline

◆ operator()() [1/5]

template<typename T , typename MT >
template<typename ArgumentContainer >
iterator sc_core::sc_vector_assembly< T, MT >::operator() ( ArgumentContainer & c)
inline

Definition at line 734 of file sc_vector.hh.

References c.

◆ operator()() [2/5]

template<typename T , typename MT >
template<typename ArgumentIterator >
iterator sc_core::sc_vector_assembly< T, MT >::operator() ( ArgumentIterator first,
ArgumentIterator last )
inline

Definition at line 741 of file sc_vector.hh.

References sc_core::sc_vector_assembly< T, MT >::begin().

◆ operator()() [3/5]

template<typename T , typename MT >
template<typename ArgumentIterator >
iterator sc_core::sc_vector_assembly< T, MT >::operator() ( ArgumentIterator first,
ArgumentIterator last,
iterator from )
inline

◆ operator()() [4/5]

template<typename T , typename MT >
template<typename ArgumentIterator >
iterator sc_core::sc_vector_assembly< T, MT >::operator() ( ArgumentIterator first,
ArgumentIterator last,
typename sc_vector< T >::iterator from )
inline

◆ operator()() [5/5]

template<typename T , typename MT >
template<typename ContainerType , typename ArgumentType >
iterator sc_core::sc_vector_assembly< T, MT >::operator() ( sc_vector_assembly< ContainerType, ArgumentType > c)
inline

Definition at line 727 of file sc_vector.hh.

References c.

◆ operator[]() [1/2]

template<typename T , typename MT >
iterator::reference sc_core::sc_vector_assembly< T, MT >::operator[] ( size_type i)
inline

◆ operator[]() [2/2]

template<typename T , typename MT >
const_iterator::reference sc_core::sc_vector_assembly< T, MT >::operator[] ( size_type i) const
inline

◆ size()

template<typename T , typename MT >
size_type sc_core::sc_vector_assembly< T, MT >::size ( ) const
inline

Friends And Related Symbol Documentation

◆ sc_assemble_vector

template<typename T , typename MT >
sc_vector_assembly< T, MT > sc_assemble_vector ( sc_vector< T > & ,
MT(T::*)  )
friend

Member Data Documentation

◆ ptr_

◆ vec_


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

Generated on Tue Jun 18 2024 16:24:55 for gem5 by doxygen 1.11.0