ATLAS Offline Software
Public Types | Public Member Functions | Static Public Attributes | Protected Member Functions | Private Attributes | List of all members
TrigNavTest::TestBContainerView Class Reference

#include <TestTypesB.h>

Inheritance diagram for TrigNavTest::TestBContainerView:
Collaboration diagram for TrigNavTest::TestBContainerView:

Public Types

typedef DV::size_type size_type
 Basic types, forwarded from the base. More...
 
typedef DV::difference_type difference_type
 
typedef DV::allocator_type allocator_type
 
typedef DV::base_value_type base_value_type
 
typedef DV::BaseContainer BaseContainer
 
typedef DV::DVL_BASE DVL_BASE
 
typedef DV::const_iterator const_iterator
 
typedef DV::const_reverse_iterator const_reverse_iterator
 
typedef DV::value_type value_type
 
typedef DV::const_value_type const_value_type
 
typedef DV::reference reference
 
typedef DV::const_reference const_reference
 
typedef DV::pointer pointer
 
typedef DV::const_pointer const_pointer
 
typedef DV::unique_type unique_type
 
typedef std::vector< ElementLink< TestBContainer > > Pers_t
 The old persistent form of this class. More...
 

Public Member Functions

 TestBContainerView ()
 
void clearPersistent ()
 Clear the persistent data. More...
 
void setClearOnPersistent ()
 Set a flag to declare that the vector should be cleared on the next call to toPersistent(). More...
 

Static Public Attributes

static constexpr bool must_own
 If true, then this type must own its contents. More...
 

Protected Member Functions

template<class DV >
void doToPersistent1 (DV &v, const std::true_type &)
 Convert to persistent form. More...
 
template<class DV >
void doToPersistent1 (DV &, const std::false_type &)
 Convert to persistent form. More...
 
template<class DV >
void doToPersistent (DV &v)
 Convert to persistent form. More...
 
template<class DV >
void doToTransient2 (DV &v, const std::true_type &)
 Convert to transient form. More...
 
template<class DV >
void doToTransient2 (DV &, const std::false_type &)
 Convert to transient form. More...
 
template<class DV >
void doToTransient1 (DV &v, const std::true_type &)
 Convert to persistent form. More...
 
template<class DV >
void doToTransient1 (DV &, const std::false_type &)
 Convert to transient form. More...
 
template<class DV >
void doToTransient (DV &v)
 Convert to persistent form. More...
 

Private Attributes

std::vector< sgkey_t > m_persKey
 The persistent form. (sgkey, index) More...
 
std::vector< unsigned int > m_persIndex
 
bool m_clearOnPersistent = false
 If true, the vector should be cleared when doPersistent is called. More...
 

Constructors, destructors, assignment.

void clear (SG::OwnershipPolicy ownPolicy)
 
void clear (SG::OwnershipPolicy ownPolicy, SG::IndexTrackingPolicy trackIndices)
 
virtual void toPersistent () override
 Convert the vector to persistent form. More...
 
virtual void toTransient () override
 Convert the vector to transient form. More...
 
void registerBaseInit ()
 Helper to ensure that the inheritance information for this class gets initialized. More...
 

Detailed Description

Definition at line 45 of file TestTypesB.h.

Member Typedef Documentation

◆ allocator_type

typedef DV::allocator_type ViewVector< TestBContainer >::allocator_type
inherited

Definition at line 72 of file ViewVector.h.

◆ base_value_type

typedef DV::base_value_type ViewVector< TestBContainer >::base_value_type
inherited

Definition at line 73 of file ViewVector.h.

◆ BaseContainer

typedef DV::BaseContainer ViewVector< TestBContainer >::BaseContainer
inherited

Definition at line 74 of file ViewVector.h.

◆ const_iterator

typedef DV::const_iterator ViewVector< TestBContainer >::const_iterator
inherited

Definition at line 76 of file ViewVector.h.

◆ const_pointer

typedef DV::const_pointer ViewVector< TestBContainer >::const_pointer
inherited

Definition at line 83 of file ViewVector.h.

◆ const_reference

typedef DV::const_reference ViewVector< TestBContainer >::const_reference
inherited

Definition at line 81 of file ViewVector.h.

◆ const_reverse_iterator

typedef DV::const_reverse_iterator ViewVector< TestBContainer >::const_reverse_iterator
inherited

Definition at line 77 of file ViewVector.h.

◆ const_value_type

typedef DV::const_value_type ViewVector< TestBContainer >::const_value_type
inherited

Definition at line 79 of file ViewVector.h.

◆ difference_type

typedef DV::difference_type ViewVector< TestBContainer >::difference_type
inherited

Definition at line 71 of file ViewVector.h.

◆ DVL_BASE

typedef DV::DVL_BASE ViewVector< TestBContainer >::DVL_BASE
inherited

Definition at line 75 of file ViewVector.h.

◆ Pers_t

typedef std::vector<ElementLink<TestBContainer > > ViewVector< TestBContainer >::Pers_t
inherited

The old persistent form of this class.

Definition at line 91 of file ViewVector.h.

◆ pointer

typedef DV::pointer ViewVector< TestBContainer >::pointer
inherited

Definition at line 82 of file ViewVector.h.

◆ reference

typedef DV::reference ViewVector< TestBContainer >::reference
inherited

Definition at line 80 of file ViewVector.h.

◆ size_type

typedef DV::size_type ViewVector< TestBContainer >::size_type
inherited

Basic types, forwarded from the base.

Definition at line 70 of file ViewVector.h.

◆ unique_type

typedef DV::unique_type ViewVector< TestBContainer >::unique_type
inherited

Definition at line 84 of file ViewVector.h.

◆ value_type

typedef DV::value_type ViewVector< TestBContainer >::value_type
inherited

Definition at line 78 of file ViewVector.h.

Constructor & Destructor Documentation

◆ TestBContainerView()

TrigNavTest::TestBContainerView::TestBContainerView ( )
inline

Definition at line 47 of file TestTypesB.h.

Member Function Documentation

◆ clear() [1/2]

void ViewVector< TestBContainer >::clear ( SG::OwnershipPolicy  ownPolicy)
inherited

◆ clear() [2/2]

void ViewVector< TestBContainer >::clear ( SG::OwnershipPolicy  ownPolicy,
SG::IndexTrackingPolicy  trackIndices 
)
inherited

◆ clearPersistent()

void SG::ViewVectorBase::clearPersistent ( )
inherited

Clear the persistent data.

◆ doToPersistent()

template<class DV >
void SG::ViewVectorBase::doToPersistent ( DV &  v)
protectedinherited

Convert to persistent form.

Parameters
vThe vector to convert.

This will abort if called for a class with no CLID.

◆ doToPersistent1() [1/2]

template<class DV >
void SG::ViewVectorBase::doToPersistent1 ( DV &  ,
const std::false_type &   
)
protectedinherited

Convert to persistent form.

Parameters
vThe vector to convert.

Called for classes that do not have a CLID. This will simply abort.

◆ doToPersistent1() [2/2]

template<class DV >
void SG::ViewVectorBase::doToPersistent1 ( DV &  v,
const std::true_type &   
)
protectedinherited

Convert to persistent form.

Parameters
vThe vector to convert.

Called for classes that have a CLID.

◆ doToTransient()

template<class DV >
void SG::ViewVectorBase::doToTransient ( DV &  v)
inlineprotectedinherited

Convert to persistent form.

Parameters
vThe vector to convert.

Dispatch based on whether the class has a CLID.

Definition at line 157 of file ViewVectorBase.h.

158  {
159 #ifdef XAOD_STANDALONE
160  doToTransient1 (v, std::true_type());
161 #else
163 #endif
164  }

◆ doToTransient1() [1/2]

template<class DV >
void SG::ViewVectorBase::doToTransient1 ( DV &  ,
const std::false_type &   
)
inlineprotectedinherited

Convert to transient form.

Parameters
vThe vector to fill in.

Called for the case that DV doesn't have a CLID. A no-op.

This is also what will get called for the case of an older version of a schema-evolved vector.

Definition at line 147 of file ViewVectorBase.h.

147 {}

◆ doToTransient1() [2/2]

template<class DV >
void SG::ViewVectorBase::doToTransient1 ( DV &  v,
const std::true_type &   
)
inlineprotectedinherited

Convert to persistent form.

Parameters
vThe vector to convert.

Class has a CLID; dispatch based on whether DV is a ConstDataVector.

Definition at line 131 of file ViewVectorBase.h.

132  {
133  doToTransient2 (v, std::is_same<DV, typename DV::base_data_vector>());
134  }

◆ doToTransient2() [1/2]

template<class DV >
void SG::ViewVectorBase::doToTransient2 ( DV &  ,
const std::false_type &   
)
inlineprotectedinherited

Convert to transient form.

Parameters
vThe vector to fill in.

Called for the case that DV is not a ConstDataVector. A no-op.

Definition at line 121 of file ViewVectorBase.h.

121 {}

◆ doToTransient2() [2/2]

template<class DV >
void SG::ViewVectorBase::doToTransient2 ( DV &  v,
const std::true_type &   
)
protectedinherited

Convert to transient form.

Parameters
vThe vector to fill in.

Called for classes that have a CLID if DV is not a ConstDataVector.

◆ registerBaseInit()

void ViewVector< TestBContainer >::registerBaseInit
privateinherited

Helper to ensure that the inheritance information for this class gets initialized.

◆ setClearOnPersistent()

void SG::ViewVectorBase::setClearOnPersistent ( )
inherited

Set a flag to declare that the vector should be cleared on the next call to toPersistent().

This would be used in the case where we make a copy of the object being written.

◆ toPersistent()

virtual void ViewVector< TestBContainer >::toPersistent
overridevirtualinherited

Convert the vector to persistent form.

Implements SG::ViewVectorBase.

◆ toTransient()

virtual void ViewVector< TestBContainer >::toTransient
overridevirtualinherited

Convert the vector to transient form.

Implements SG::ViewVectorBase.

Member Data Documentation

◆ m_clearOnPersistent

bool SG::ViewVectorBase::m_clearOnPersistent = false
privateinherited

If true, the vector should be cleared when doPersistent is called.

Definition at line 176 of file ViewVectorBase.h.

◆ m_persIndex

std::vector<unsigned int> SG::ViewVectorBase::m_persIndex
privateinherited

Definition at line 173 of file ViewVectorBase.h.

◆ m_persKey

std::vector<sgkey_t> SG::ViewVectorBase::m_persKey
privateinherited

The persistent form. (sgkey, index)

Definition at line 172 of file ViewVectorBase.h.

◆ must_own

constexpr bool ViewVector< TestBContainer >::must_own
staticconstexprinherited

If true, then this type must own its contents.

Definition at line 88 of file ViewVector.h.


The documentation for this class was generated from the following file:
SG::ViewVectorBase::doToTransient1
void doToTransient1(DV &v, const std::true_type &)
Convert to persistent form.
Definition: ViewVectorBase.h:131
SG::ViewVectorBase::doToTransient2
void doToTransient2(DV &v, const std::true_type &)
Convert to transient form.
SG::VIEW_ELEMENTS
@ VIEW_ELEMENTS
this data object is a view, it does not own its elmts
Definition: OwnershipPolicy.h:18
ViewVector< TestBContainer >
ClassID_traits
Default, invalid implementation of ClassID_traits.
Definition: Control/AthenaKernel/AthenaKernel/ClassID_traits.h:40
python.PyAthena.v
v
Definition: PyAthena.py:157