ATLAS Offline Software
Loading...
Searching...
No Matches
PhaseII::PixelRawDataProxy< accessPolicy > Class Template Reference

A proxy for a pixel RDO which adds convenience methods to interpret the data word to the base proxy. More...

#include <PhaseIIPixelRawDataContainer.h>

Inheritance diagram for PhaseII::PixelRawDataProxy< accessPolicy >:
Collaboration diagram for PhaseII::PixelRawDataProxy< accessPolicy >:

Public Types

using BASE = RawDataProxyBase<typename Utils::ContainerAccessHelper<PhaseII::PixelRawDataContainer, accessPolicy>::ContainerType >
using index_t = ElementIndexType
using ContainerNonConst = std::remove_cvref_t<Container>
using ContainerPtr = std::conditional<isConst , const ContainerNonConst *, ContainerNonConst *>::type

Public Member Functions

int getToT () const
int getBCID () const
int getLVL1A () const
int getLVL1ID () const
const auto & coordinates () const
const auto & dataWord () const
index_t index () const
const ContainerNonConstcontainer () const
ContainerNonConstcontainer ()

Static Public Attributes

static constexpr bool isConst = std::is_const_v<Container>

Protected Member Functions

const ContainerNonConstcptr () const

Protected Attributes

ContainerPtr m_container
index_t m_index

Detailed Description

template<AccessPolicy accessPolicy = AccessPolicy::Const>
class PhaseII::PixelRawDataProxy< accessPolicy >

A proxy for a pixel RDO which adds convenience methods to interpret the data word to the base proxy.

Definition at line 62 of file PhaseIIPixelRawDataContainer.h.

Member Typedef Documentation

◆ BASE

template<AccessPolicy accessPolicy = AccessPolicy::Const>
using PhaseII::PixelRawDataProxy< accessPolicy >::BASE = RawDataProxyBase<typename Utils::ContainerAccessHelper<PhaseII::PixelRawDataContainer, accessPolicy>::ContainerType >

Definition at line 66 of file PhaseIIPixelRawDataContainer.h.

◆ ContainerNonConst

template<class Container, typename ElementIndexType>
using Utils::ElementProxyBase< Container, ElementIndexType >::ContainerNonConst = std::remove_cvref_t<Container>
inherited

Definition at line 116 of file ProxyContainer.h.

◆ ContainerPtr

template<class Container, typename ElementIndexType>
using Utils::ElementProxyBase< Container, ElementIndexType >::ContainerPtr = std::conditional<isConst , const ContainerNonConst *, ContainerNonConst *>::type
inherited

Definition at line 117 of file ProxyContainer.h.

◆ index_t

template<class Container, typename ElementIndexType>
using Utils::ElementProxyBase< Container, ElementIndexType >::index_t = ElementIndexType
inherited

Definition at line 115 of file ProxyContainer.h.

Member Function Documentation

◆ container() [1/2]

template<class Container, typename ElementIndexType>
ContainerNonConst & Utils::ElementProxyBase< Container, ElementIndexType >::container ( )
inlineinherited
Returns
A non const pointer of the container which contains the elements this proxy refers to if the access policy permits read-write access

Definition at line 156 of file ProxyContainer.h.

◆ container() [2/2]

template<class Container, typename ElementIndexType>
const ContainerNonConst & Utils::ElementProxyBase< Container, ElementIndexType >::container ( ) const
inlineinherited
Returns
A const pointer of the container which contains the elements this proxy refers to. The value returned by index identifies the element within this container.

Definition at line 152 of file ProxyContainer.h.

153 { assert( m_container != nullptr); return *m_container; }

◆ coordinates()

const auto & PhaseII::RawDataProxyBase< Utils::ContainerAccessHelper< PhaseII::PixelRawDataContainer, AccessPolicy::Const >::ContainerType >::coordinates ( ) const
inlineinherited

Definition at line 365 of file PhaseIIInDetRawDataContainer.h.

365 {
366 return this->container().coordinates(this->index());
367 }

◆ cptr()

template<class Container, typename ElementIndexType>
const ContainerNonConst * Utils::ElementProxyBase< Container, ElementIndexType >::cptr ( ) const
inlineprotectedinherited

Definition at line 159 of file ProxyContainer.h.

159 {
160 return &container();
161 }
const ContainerNonConst & container() const

◆ dataWord()

const auto & PhaseII::RawDataProxyBase< Utils::ContainerAccessHelper< PhaseII::PixelRawDataContainer, AccessPolicy::Const >::ContainerType >::dataWord ( ) const
inlineinherited

Definition at line 371 of file PhaseIIInDetRawDataContainer.h.

371 {
372 return this->container().dataWord(this->index());
373 }

◆ getBCID()

template<AccessPolicy accessPolicy = AccessPolicy::Const>
int PhaseII::PixelRawDataProxy< accessPolicy >::getBCID ( ) const
inline

Definition at line 70 of file PhaseIIPixelRawDataContainer.h.

static int getBCID(std::uint32_t dataWord)

◆ getLVL1A()

template<AccessPolicy accessPolicy = AccessPolicy::Const>
int PhaseII::PixelRawDataProxy< accessPolicy >::getLVL1A ( ) const
inline

Definition at line 71 of file PhaseIIPixelRawDataContainer.h.

static int getLVL1A(std::uint32_t dataWord)

◆ getLVL1ID()

template<AccessPolicy accessPolicy = AccessPolicy::Const>
int PhaseII::PixelRawDataProxy< accessPolicy >::getLVL1ID ( ) const
inline

Definition at line 72 of file PhaseIIPixelRawDataContainer.h.

static int getLVL1ID(std::uint32_t dataWord)

◆ getToT()

template<AccessPolicy accessPolicy = AccessPolicy::Const>
int PhaseII::PixelRawDataProxy< accessPolicy >::getToT ( ) const
inline

Definition at line 69 of file PhaseIIPixelRawDataContainer.h.

69{ return PixelRawDataContainer::getToT(this->dataWord()); }
static int getToT(std::uint32_t dataWord)

◆ index()

template<class Container, typename ElementIndexType>
index_t Utils::ElementProxyBase< Container, ElementIndexType >::index ( ) const
inlineinherited
Parameters
Returnthe "index" which identifies the element this proxy refers to within the container returned by container. This may or may not be the index which was used to create this proxy from the parent proxy i.e. in auto child_proxy=parent_proxy[index] it may be that child_proxy.index() != index. To recover "index" use auto index_recover = ParentProxy::getOriginalElementIndex(child_proxy);

Definition at line 148 of file ProxyContainer.h.

148{ return m_index; }

Member Data Documentation

◆ isConst

template<class Container, typename ElementIndexType>
bool Utils::ElementProxyBase< Container, ElementIndexType >::isConst = std::is_const_v<Container>
staticconstexprinherited

Definition at line 114 of file ProxyContainer.h.

◆ m_container

template<class Container, typename ElementIndexType>
ContainerPtr Utils::ElementProxyBase< Container, ElementIndexType >::m_container
protectedinherited

Definition at line 162 of file ProxyContainer.h.

◆ m_index

template<class Container, typename ElementIndexType>
index_t Utils::ElementProxyBase< Container, ElementIndexType >::m_index
protectedinherited

Definition at line 163 of file ProxyContainer.h.


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