ATLAS Offline Software
Public Types | Public Member Functions | Protected Attributes | List of all members
PixelClusterCnv_p3 Class Referenceabstract

#include <PixelClusterCnv_p3.h>

Inheritance diagram for PixelClusterCnv_p3:
Collaboration diagram for PixelClusterCnv_p3:

Public Types

typedef TRANS Trans_t
 
typedef PERS Pers_t
 
typedef PERS PersBase_t
 
typedef TRANS_BASE TransBase_t
 
typedef ITPConverterFor< TRANS_BASE > PolyCnvBase_t
 
typedef Gaudi::PluginService::Factory< ITPCnvBase *()> Factory
 

Public Member Functions

 PixelClusterCnv_p3 ()
 
 PixelClusterCnv_p3 (const PixelID *)
 
InDet::PixelCluster createPixelCluster (const InDet::PixelCluster_p3 *persObj, const Identifier &waferId, const InDetDD::SiDetectorElement *delEl, MsgStream &log)
 
void persToTrans (const InDet::PixelCluster_p3 *, InDet::PixelCluster *, MsgStream &)
 
void transToPers (const InDet::PixelCluster *, InDet::PixelCluster_p3 *, MsgStream &)
 
virtual TRANS * createTransient (const PERS *persObj, MsgStream &log)
 Create transient representation of a persistent object. More...
 
virtual TRANS * createTransientWithKey (const PERS *persObj, const std::string &key, MsgStream &log)
 Create transient representation of a persistent object, with SG key. More...
 
virtual TRANS * virt_createTransFromPStore (unsigned index, MsgStream &log)
 Internal interface method that is used to invoke the real conversion method (createTransient) More...
 
virtual TRANS * virt_createTransFromPStoreWithKey (unsigned index, const std::string &key, MsgStream &log)
 Internal interface method that is used to invoke the real conversion method (createTransient) More...
 
virtual void persToTrans (const PERS *persObj, TRANS *transObj, MsgStream &log)=0
 Convert persistent representation to transient one. More...
 
virtual void transToPers (const TRANS *transObj, PERS *persObj, MsgStream &log)=0
 Convert transient representation to persistent one. More...
 
virtual void persToTransWithKey (const PERS *persObj, TRANS *transObj, const std::string &, MsgStream &log)
 Convert persistent representation to transient one. More...
 
virtual void transToPersWithKey (const TRANS *transObj, PERS *persObj, const std::string &, MsgStream &log)
 Convert transient representation to persistent one. More...
 
virtual void persToTransUntyped (const void *pers, void *trans, MsgStream &log)
 Convert persistent object representation to transient. More...
 
virtual void transToPersUntyped (const void *trans, void *pers, MsgStream &log)
 Convert transient object representation to persistent. More...
 
virtual void persToTransWithKeyUntyped (const void *pers, void *trans, const std::string &key, MsgStream &log)
 Convert persistent object representation to transient. More...
 
virtual void transToPersWithKeyUntyped (const void *trans, void *pers, const std::string &key, MsgStream &log)
 Convert transient object representation to persistent. More...
 
virtual PERScreatePersistent (const TRANS *transObj, MsgStream &log)
 Create persistent representation of a transient object. More...
 
virtual PERScreatePersistentWithKey (const TRANS *transObj, const std::string &key, MsgStream &log)
 Create persistent representation of a transient object, with SG key. More...
 
TPObjRef toPersistentWithKey_impl (const TRANS *trans, const std::string &key, MsgStream &log)
 Convert transient object to persistent representation. More...
 
virtual const std::type_info & transientTInfo () const
 return C++ type id of the transient class this converter is for More...
 
virtual const std::type_info & transientTInfo () const
 return C++ type id of the transient class this converter is for More...
 
virtual const std::type_info & persistentTInfo () const
 return C++ type id of the persistent class this converter is for More...
 
virtual void pstoreToTrans (unsigned index, TRANS_BASE *trans, MsgStream &log)
 Convert persistent representation stored in the storage vector of the top-level object to transient. More...
 
virtual TPObjRef virt_toPersistent (const TRANS_BASE *trans, MsgStream &log)
 Internal interface method that is used to invoke the real conversion method (toPersistent_impl) in the derived converter. More...
 
virtual TPObjRef virt_toPersistentWithKey (const TRANS_BASE *trans, const std::string &key, MsgStream &log)
 Internal interface method that is used to invoke the real conversion method (toPersistent_impl) in the derived converter. More...
 
void setPStorage (std::vector< PERS > *storage)
 Tell this converter which storage vector it should use to store or retrieve persistent representations. More...
 
void setRecursive (bool flag=true)
 Tell the converter if it should work in recursive mode slower but it can safely handle recursion. More...
 
void ignoreRecursion (bool flag=false)
 Tell the converter to ignore recursion (do not throw errors) even when recurion is detected. More...
 
virtual void reservePStorage (size_t size)
 Reserve 'size' elements for persistent storage. More...
 
CNV * converterForType (CNV *cnv, const std::type_info &t_info, MsgStream &log) const
 Find converter for a given C++ type ID, that is or ihnerits from CNV type. More...
 
CNV * converterForRef (CNV *cnv, const TPObjRef &ref, MsgStream &log) const
 Find converter for a TP type ID (passed in a TP Ref), that is or ihnerits from CNV type. More...
 
TPObjRef baseToPersistent (CNV **cnv, const typename CNV::Trans_t *transObj, MsgStream &log) const
 Persistify bass class of a given object and store the persistent represenation in the storage vector of the top-level persistent object. More...
 
TPObjRef toPersistent (CNV **cnv, const typename CNV::TransBase_t *transObj, MsgStream &log) const
 Persistify an object and store the persistent represenation in the storage vector of the top-level persistent object. More...
 
void fillTransFromPStore (CNV **cnv, const TPObjRef &ref, TRANS_T *trans, MsgStream &log) const
 Convert persistent object, stored in the the top-level persistent object and referenced by the TP Ref, to transient representation. More...
 
CNV::Trans_t * createTransFromPStore (CNV **cnv, const TPObjRef &ref, MsgStream &log) const
 Create transient representation of a persistent object, stored in the the top-level persistent object and referenced by the TP Ref. More...
 
virtual void initPrivateConverters (TopLevelTPCnvBase *)
 
virtual TopLevelTPCnvBasetopConverter ()
 return the top-level converter for this elemental TP converter More...
 
virtual const TopLevelTPCnvBasetopConverter () const
 return the top-level converter for this elemental TP converter More...
 
virtual const TopLevelTPCnvBasetopConverter () const
 
const std::type_info & transBaseTInfo () const
 return C++ type id of the common base transient type for all converters for a group of polymorphic types More...
 
virtual const std::type_info & transBaseTInfo () const =0
 return C++ type id of the common base transient type for all converters for a group of polymorphic types More...
 
virtual const TPObjRef::typeID_ttypeID () const
 Return TP typeID for persistent objects produced by this converter. More...
 
virtual const TPObjRef::typeID_ttypeID () const =0
 Return TP typeID for persistent objects produced by this converter. More...
 
unsigned typeIDvalue () const
 inlined non-virtual version to get the typeID value fast More...
 
virtual void setRuntimeTopConverter (TopLevelTPCnvBase *topConverter)
 Set runtime top-level converter - usually it is the owning TL converter, but in case of extended objects it will be the TL converter of the extended object. More...
 
virtual void setTopConverter (TopLevelTPCnvBase *topConverter, const TPObjRef::typeID_t &TPtypeID)
 Set which top-level converter owns this elemental converter, and what TPtypeID was assigned to the persistent objects it produces. More...
 
void setReadingFlag ()
 
void clearReadingFlag ()
 
bool wasUsedForReading ()
 
virtual void converterNotFound (const std::type_info &converterType, ITPConverter *c, const std::string &typeName, MsgStream &log) const
 method called when the right TP converter was not found during writing More...
 
virtual void converterNotFound (unsigned typeID, ITPConverter *c, const std::string &typeName, MsgStream &log) const
 method called when the right TP converter was not found during reading More...
 

Protected Attributes

InDet::SiWidthCnv_p2 m_swCnv
 
LocalPositionCnv_p1 m_localPosCnv
 
ErrorMatrixCnv_p1 m_errorMxCnv
 
const PixelIDm_pixId2
 
std::vector< PERS > * m_pStorage
 the address of the storage vector for persistent representations More...
 
int m_curRecLevel
 count recursive invocations, to detect recursion More...
 
bool m_recursive
 if true, work in recursion-safe way (slower) More...
 
bool m_ignoreRecursion
 if true, do not throw errors in case of recursion. More...
 
TPObjRef::typeID_t m_pStorageTID
 TP Ref typeID for the persistent objects this converter is creating. More...
 
unsigned m_pStorageTIDvalue
 m_pStorageTID converted to integer value More...
 
TopLevelTPCnvBasem_topConverter
 top level converter that owns this elemental TP converter it also holds the storage object More...
 
TopLevelTPCnvBasem_topConverterRuntime
 top level converter "owning" this TP converter at runtime (different from m_topConverter in case the top-level converter and object have extensions) More...
 
bool m_wasUsedForReading
 flag set when using this converter for reading triggers search for a new converter before writing, to prevent possible use of old version More...
 

Detailed Description

Definition at line 27 of file PixelClusterCnv_p3.h.

Member Typedef Documentation

◆ Factory

typedef Gaudi::PluginService::Factory<ITPCnvBase*()> ITPCnvBase::Factory
inherited

Definition at line 26 of file ITPCnvBase.h.

◆ Pers_t

template<class TRANS_BASE , class TRANS , class PERS >
typedef PERS TPAbstractPolyCnvBase< TRANS_BASE, TRANS, PERS >::Pers_t
inherited

Definition at line 335 of file TPConverter.h.

◆ PersBase_t

template<class TRANS_BASE , class TRANS , class PERS >
typedef PERS TPAbstractPolyCnvBase< TRANS_BASE, TRANS, PERS >::PersBase_t
inherited

Definition at line 336 of file TPConverter.h.

◆ PolyCnvBase_t

typedef ITPConverterFor< TRANS_BASE > ITPConverterFor< TRANS_BASE >::PolyCnvBase_t
inherited

Definition at line 41 of file TPConverter.h.

◆ Trans_t

template<class TRANS_BASE , class TRANS , class PERS >
typedef TRANS TPAbstractPolyCnvBase< TRANS_BASE, TRANS, PERS >::Trans_t
inherited

Definition at line 334 of file TPConverter.h.

◆ TransBase_t

typedef TRANS_BASE ITPConverterFor< TRANS_BASE >::TransBase_t
inherited

Definition at line 39 of file TPConverter.h.

Constructor & Destructor Documentation

◆ PixelClusterCnv_p3() [1/2]

PixelClusterCnv_p3::PixelClusterCnv_p3 ( )
inline

Definition at line 31 of file PixelClusterCnv_p3.h.

31 {}

◆ PixelClusterCnv_p3() [2/2]

PixelClusterCnv_p3::PixelClusterCnv_p3 ( const PixelID pixid)

Definition at line 22 of file PixelClusterCnv_p3.cxx.

23  :
24  m_pixId2(pixid)
25 {}

Member Function Documentation

◆ baseToPersistent()

TPObjRef ITPConverterFor< TRANS_BASE >::baseToPersistent ( CNV **  cnv,
const typename CNV::Trans_t *  transObj,
MsgStream &  log 
) const
inlineinherited

Persistify bass class of a given object and store the persistent represenation in the storage vector of the top-level persistent object.

The converter is located using the transient type from the CNV parameter, not from the object itself (because we need the base type, not the actual type)

Parameters
cnv[IN/OUT] type of this parameter decides which converter will be used. Once the converter is found, this pointer will be set so the search is done only once
transObj[IN] transient object
log[IN] output message stream
Returns
TPObjRef TP reference to the persistent representation stored in the storage vector of the top-level persistent object

Definition at line 97 of file TPConverter.h.

97  {
98  if( !*cnv || (*cnv)->wasUsedForReading() ) {
99  // don't trust the converter if it was used for reading, find again
100  *cnv = converterForType( *cnv, typeid(typename CNV::Trans_t), log );
101  if( !*cnv ) return TPObjRef();
102  (*cnv)->clearReadingFlag();
103  }
104 // return (**cnv).toPersistent_impl(transObj, log);
105  return (**cnv).virt_toPersistent(transObj, log);
106  }

◆ clearReadingFlag()

void ITPConverterFor< TRANS_BASE >::clearReadingFlag ( )
inlineinherited

Definition at line 235 of file TPConverter.h.

235 { m_wasUsedForReading = false; }

◆ converterForRef()

CNV* ITPConverterFor< TRANS_BASE >::converterForRef ( CNV *  cnv,
const TPObjRef ref,
MsgStream &  log 
) const
inlineinherited

Find converter for a TP type ID (passed in a TP Ref), that is or ihnerits from CNV type.

Parameters
cnv[IN] parameter specifying the converter type
ref[IN] TP Ref to an object for which a converter is sought
log[IN] output message stream
Returns
CNV* pointer to the converter, if found

Definition at line 74 of file TPConverter.h.

74  {
76  cnv = dynamic_cast<CNV*>(c);
77  if( !cnv )
78  this->converterNotFound( ref.typeID(), c, typeid(CNV).name(), log );
79  return cnv;
80  }

◆ converterForType()

CNV* ITPConverterFor< TRANS_BASE >::converterForType ( CNV *  cnv,
const std::type_info &  t_info,
MsgStream &  log 
) const
inlineinherited

Find converter for a given C++ type ID, that is or ihnerits from CNV type.

Parameters
cnv[IN] parameter specifying the converter type
t_info[IN] C++ type id for which a converter is sought
log[IN] output message stream
Returns
CNV* pointer to the converter, if found

Definition at line 58 of file TPConverter.h.

58  {
60  cnv = dynamic_cast< CNV* >( c );
61  if( !cnv )
62  this->converterNotFound( typeid(CNV), c, t_info.name(), log );
63  return cnv;
64  }

◆ converterNotFound() [1/2]

void ITPConverter::converterNotFound ( const std::type_info &  converterType,
ITPConverter c,
const std::string &  typeName,
MsgStream &  log 
) const
virtualinherited

method called when the right TP converter was not found during writing

  • useful as a debugging hook, prints a detailed error message
Parameters
converterType[IN] converterType that was requested
c[IN] converter that was actually found (0 if not)
typeName[IN] the C++ type name of the type for which converter was searched for
log[IN] output message stream

Definition at line 22 of file ITPConverter.cxx.

26 {
27  log << MSG::ERROR << ">>>>>> in parent TP converter " << typeid(*this).name()
28  << ": could not find matching TP converter for type " << typeName << endmsg;
29  if( c ) {
30  log << MSG::ERROR << " - found incompatible converter of type "
31  << typeid(*c).name() << endmsg;
32  }
33  log << MSG::ERROR << " Converter handle type was " << converterType.name() << endmsg;
34  errorHandler();
35 }

◆ converterNotFound() [2/2]

void ITPConverter::converterNotFound ( unsigned  typeID,
ITPConverter c,
const std::string &  typeName,
MsgStream &  log 
) const
virtualinherited

method called when the right TP converter was not found during reading

  • useful as a debugging hook, prints a detailed error message
Parameters
typeID[IN] converter ID that was requested
c[IN] converter that was actually found (0 if not)
typeName[IN] the C++ type name of the type for which converter was searched for
log[IN] output message stream

Definition at line 40 of file ITPConverter.cxx.

44 {
45  log << MSG::ERROR << ">>>>>> in parent TP converter " << typeid(*this).name()
46  << " requested TP converter for TP type ID " << typeID << " not found " << endmsg;
47  if( c ) {
48  log << MSG::ERROR << " - found converter " << typeid(*c).name()
49  << " for " << c->transientTInfo().name()
50  << " with an incompatible base type " << c->transBaseTInfo().name()
51  << endmsg;
52  }
53  log << MSG::ERROR << " Converter handle type was " << reqCnvTypeName << endmsg;
54  errorHandler();
55 }

◆ createPersistent()

template<class TRANS_BASE , class TRANS , class PERS >
virtual PERS* TPAbstractPolyCnvBase< TRANS_BASE, TRANS, PERS >::createPersistent ( const TRANS *  transObj,
MsgStream &  log 
)
virtualinherited

Create persistent representation of a transient object.

Simply creates a new persistent object and calls transToPers()

Parameters
transObj[IN] transient object
log[IN] output message stream
Returns
the created persistent representation

◆ createPersistentWithKey()

template<class TRANS_BASE , class TRANS , class PERS >
virtual PERS* TPAbstractPolyCnvBase< TRANS_BASE, TRANS, PERS >::createPersistentWithKey ( const TRANS *  transObj,
const std::string &  key,
MsgStream &  log 
)
virtualinherited

Create persistent representation of a transient object, with SG key.

Simply creates a new persistent object and calls transToPersWithKey()

Parameters
transObj[IN] transient object
key[IN] SG key of object being written
log[IN] output message stream
Returns
the created persistent representation

◆ createPixelCluster()

InDet::PixelCluster PixelClusterCnv_p3::createPixelCluster ( const InDet::PixelCluster_p3 persObj,
const Identifier waferId,
const InDetDD::SiDetectorElement delEl,
MsgStream &  log 
)

Definition at line 29 of file PixelClusterCnv_p3.cxx.

33 {
34  // if persistent m_clusId == 0, we are reading in 64 bit ids and
35  // need to extract the cluster id from the first id in the
36  // m_rdoList
37  Identifier clusId;
38  bool is64BitId = false;
39  unsigned int rdoListSize = persObj->m_rdoList.size();
40  if (persObj->m_clusId == 0) {
41  // 64-bit ids, get cluster id - wafer id has been stored in the
42  // transient object by the container cnv
43  clusId = Identifier(m_pixId2->pixel_id_offset(waferId, persObj->m_rdoList[0]) );
44  is64BitId = true;
45  rdoListSize--;
46  }
47  else {
48  // Must also fix cluster pixel id when reading in old 32-bit ids
49  // and the code has 64-bit ids
50  clusId = m_pixId2->pixel_id_from_shortened(persObj->m_clusId);
51  }
52 
53  // Local Position
54  Amg::Vector2D localPos;
55  localPos[Trk::locX] = persObj->m_localPosX;
56  localPos[Trk::locY] = persObj->m_localPosY;
57 
58  std::vector<Identifier> rdoList;
59  rdoList.resize(rdoListSize);
60  std::vector<Identifier>::iterator idit = rdoList.begin();
61  std::vector<InDet::PixelCluster_p3::rdo_diff_type>::const_iterator it = persObj->m_rdoList.begin();
62  if (is64BitId) ++it; // we have used first element of persistent rdoList for cluster id
63  for (; it != persObj->m_rdoList.end(); ++it) {
64  // When reading in data written for 32-bit ids, we need to use
65  // the PixelID helper to convert it if filling a 64-bit id
66  // (i.e. using pixel_id_from_shortened). This does nothing if
67  // the identifiers are still 32-bit RDS
68  if (is64BitId) {
69  *idit = Identifier(clusId.get_compact() + ( (static_cast<Identifier::value_type>(*it)) << m_pixId2->base_bit() ) );
70  }
71  else {
72  (*idit) = m_pixId2->pixel_id_from_shortened(persObj->m_clusId + (*it));
73  }
74  ++idit;
75  }
76 
78  m_swCnv.persToTrans(&persObj->m_width, &width, log);
79 
80  // Error matrix
81  auto cmat = Amg::MatrixX(2,2);
82  (cmat)(0,0) = static_cast<double>(persObj->m_mat00);
83  (cmat)(1,0) = static_cast<double>(persObj->m_mat01);
84  (cmat)(0,1) = static_cast<double>(persObj->m_mat01);
85  (cmat)(1,1) = static_cast<double>(persObj->m_mat11);
86 
87 
88  // Check if charge or ToT has been stored
89  int totalToT = 0;
90  float totalCharge = 0;
91  if ( (persObj->m_properties&(1<<27))!=0 )
92  totalCharge = (float)(persObj->m_properties & 0xFFFFFF);
93  else
94  totalToT = (persObj->m_properties & 0xFFFFFF);
95 
96  auto chargeList = persObj->m_chargeList;
97  InDet::PixelCluster clus (clusId,
98  localPos,
99  std::move(rdoList),
100  ((persObj->m_properties)>>28) & 0xF, // lvl1a
101  totalToT,
102  std::move(chargeList),
103  totalCharge,
104  width,
105  detEl,
106  std::move(cmat),
107  persObj->m_omegax,
108  persObj->m_omegay,
109  persObj->m_splitInfo
110  );
111 
112  clus.setGangedPixel( (persObj->m_properties&(1<<24))!=0 );
113  clus.setFake( (persObj->m_properties&(1<<25))!=0 );
114  clus.setAmbiguous( (persObj->m_properties&(1<<26))!=0 );
115  return clus;
116 }

◆ createTransFromPStore()

CNV::Trans_t* ITPConverterFor< TRANS_BASE >::createTransFromPStore ( CNV **  cnv,
const TPObjRef ref,
MsgStream &  log 
) const
inlineinherited

Create transient representation of a persistent object, stored in the the top-level persistent object and referenced by the TP Ref.

If a TP converter is not specified, it will be found based on the Ref type.

Parameters
cnv[IN][OUT] pointer to the converter, usually 0 at the start. Once the right converter is found, this pointer will be set so the search is done only once
ref[IN] TP Ref to the persistent object to be converted
log[IN] output message stream
Returns
pointer to the created transient represention

Definition at line 172 of file TPConverter.h.

172  {
173  if( ref.isNull() ) return 0;
174  CNV *temp_cnv_p = 0;
175  if( !cnv ) cnv = &temp_cnv_p;
176  // see if we already have a converter and if it is the right one
177  if( !*cnv || (*cnv)->typeID().value() != ref.typeID() ) {
178  // we don't - find the right converter for ref.typeID()
179  *cnv = converterForRef( *cnv, ref, log );
180  if( !*cnv ) return 0;
181  (*cnv)->setReadingFlag();
182  }
183  return (**cnv).virt_createTransFromPStore( ref.index(), log );
184  }

◆ createTransient()

template<class TRANS_BASE , class TRANS , class PERS >
virtual TRANS* TPPolyCnvBase< TRANS_BASE, TRANS, PERS >::createTransient ( const PERS persObj,
MsgStream &  log 
)
virtualinherited

Create transient representation of a persistent object.

Simply creates a new transient object and calls persToTrans()

Parameters
persObj[IN] persistent object
log[IN] output message stream
Returns
the created transient object

Reimplemented in TileHitVectorCnv_p1.

◆ createTransientWithKey()

template<class TRANS_BASE , class TRANS , class PERS >
virtual TRANS* TPPolyCnvBase< TRANS_BASE, TRANS, PERS >::createTransientWithKey ( const PERS persObj,
const std::string &  key,
MsgStream &  log 
)
virtualinherited

Create transient representation of a persistent object, with SG key.

Simply creates a new transient object and calls persToTransWithKey()

Parameters
persObj[IN] persistent object
key[IN] SG key of object being read
log[IN] output message stream
Returns
the created transient object

◆ fillTransFromPStore()

void ITPConverterFor< TRANS_BASE >::fillTransFromPStore ( CNV **  cnv,
const TPObjRef ref,
TRANS_T *  trans,
MsgStream &  log 
) const
inlineinherited

Convert persistent object, stored in the the top-level persistent object and referenced by the TP Ref, to transient representation.

An empty transient object to be filled in is provided. If converter is not given, it will be found based on the Ref type.

Parameters
cnv[IN][OUT] pointer to the converter, usually 0 at the start. Once the right converter is found, this pointer will be set so the search is done only once
ref[IN] TP Ref to the persistent object to be converted
trans[IN] pointer to the empty transient object
log[IN] output message stream

Definition at line 145 of file TPConverter.h.

145  {
146  if( ref.isNull() ) return;
147  CNV *temp_cnv_p = 0;
148  if( !cnv ) cnv = &temp_cnv_p;
149  // see if we already have a converter and if it is the right one
150  if( !*cnv || (*cnv)->typeID().value() != ref.typeID() ) {
151  // we don't - find the right converter for ref.typeID()
152  *cnv = converterForRef( *cnv, ref, log );
153  if( !*cnv ) return;
154  (*cnv)->setReadingFlag();
155  }
156  (**cnv).pstoreToTrans( ref.index(), trans, log );
157  }

◆ ignoreRecursion()

template<class TRANS_BASE , class TRANS , class PERS >
void TPAbstractPolyCnvBase< TRANS_BASE, TRANS, PERS >::ignoreRecursion ( bool  flag = false)
inlineinherited

Tell the converter to ignore recursion (do not throw errors) even when recurion is detected.

UNSAFE! use only if you are sure you preallocated enough persistent storage

Definition at line 568 of file TPConverter.h.

568  {
570  }

◆ initPrivateConverters()

virtual void ITPConverterFor< TRANS_BASE >::initPrivateConverters ( TopLevelTPCnvBase )
inlinevirtualinherited

◆ persistentTInfo()

template<class TRANS_BASE , class TRANS , class PERS >
virtual const std::type_info& TPAbstractPolyCnvBase< TRANS_BASE, TRANS, PERS >::persistentTInfo ( ) const
inlinevirtualinherited

return C++ type id of the persistent class this converter is for

Returns
std::type_info&

Implements ITPCnvBase.

Definition at line 482 of file TPConverter.h.

482 { return typeid(PERS); }

◆ persToTrans() [1/2]

void PixelClusterCnv_p3::persToTrans ( const InDet::PixelCluster_p3 persObj,
InDet::PixelCluster transObj,
MsgStream &  log 
)

Definition at line 119 of file PixelClusterCnv_p3.cxx.

121 {
122  Identifier waferId = transObj->identify();
123  *transObj = createPixelCluster (persObj, waferId, nullptr, log);
124 }//end of cnv_p3 method

◆ persToTrans() [2/2]

template<class TRANS_BASE , class TRANS , class PERS >
virtual void TPAbstractPolyCnvBase< TRANS_BASE, TRANS, PERS >::persToTrans ( const PERS persObj,
TRANS *  transObj,
MsgStream &  log 
)
pure virtualinherited

Convert persistent representation to transient one.

Copies data members from persistent object to an existing transient one. Needs to be implemented by the developer on the actual converter.

Parameters
persObj[IN] persistent object
transObj[IN] transient object
log[IN] output message stream

Implemented in TPCnvVector< TrigTrtHitCountsCollection, TrigTrtHitCountsCollection_p2, TrigTrtHitCountsCnv_p2 >, TPCnvVector< TrigTauTracksInfoCollection, TrigTauTracksInfoCollection_p2, TrigTauTracksInfoCnv_p2 >, TPCnvVector< TrigTauContainer, TrigTauContainer_p3, TrigTauCnv_p3 >, TPCnvVector< TrigTauClusterDetailsContainer, TrigTauClusterDetailsContainer_p2, TrigTauClusterDetailsCnv_p2 >, TPCnvVector< TrigTauClusterContainer, TrigTauClusterContainer_p5, TrigTauClusterCnv_p5 >, TPCnvVector< TrigTauClusterContainer, TrigTauClusterContainer_p4, TrigTauClusterCnv_p4 >, TPCnvVector< TrigTauClusterContainer, TrigTauClusterContainer_p3, TrigTauClusterCnv_p3 >, TPCnvVector< TrigT2MbtsBitsContainer, TrigT2MbtsBitsContainer_p3, TrigT2MbtsBitsCnv_p3 >, TPCnvVector< TrigT2JetContainer, TrigT2JetContainer_p3, TrigT2JetCnv_p3 >, TPCnvVector< TrigSpacePointCountsCollection, TrigSpacePointCountsCollection_p4, TrigSpacePointCountsCnv_p4 >, TPCnvVector< TrigRoiDescriptorCollection, TrigRoiDescriptorCollection_p3, TrigRoiDescriptorCnv_p3 >, TPCnvVector< TrigRoiDescriptorCollection, TrigRoiDescriptorCollection_p2, TrigRoiDescriptorCnv_p2 >, TPCnvVector< TrigRNNOutputContainer, TrigRNNOutputContainer_p2, TrigRNNOutputCnv_p2 >, TPCnvVector< TrigPhotonContainer, TrigPhotonContainer_p3, TrigPhotonCnv_p3 >, TPCnvVector< TrigPassFlagsCollection, TrigPassFlagsCollection_p1, TrigPassFlagsCnv_p1 >, TPCnvVector< TrigPassBitsCollection, TrigPassBitsCollection_p1, TrigPassBitsCnv_p1 >, TPCnvVector< TrigMuonEFIsolationContainer, TrigMuonEFIsolationContainer_p2, TrigMuonEFIsolationCnv_p2 >, TPCnvVector< TrigMuonEFIsolationContainer, TrigMuonEFIsolationContainer_p1, TrigMuonEFIsolationCnv_p1 >, TPCnvVector< TrigMuonEFContainer, TrigMuonEFContainer_p2, TrigMuonEFCnv_p2 >, TPCnvVector< TrigMissingETContainer, TrigMissingETContainer_p3, TrigMissingETCnv_p3 >, TPCnvVector< TrigL2BjetContainer, TrigL2BjetContainer_p3, TrigL2BjetCnv_p3 >, TPCnvVector< TrigEMClusterContainer, TrigEMClusterContainer_p4, TrigEMClusterCnv_p4 >, TPCnvVector< TrigEMClusterContainer, TrigEMClusterContainer_p3, TrigEMClusterCnv_p3 >, TPCnvVector< TrigElectronContainer, TrigElectronContainer_p3, TrigElectronCnv_p3 >, TPCnvVector< TrigCompositeContainer, TrigCompositeContainer_p1, TrigCompositeCnv_p1 >, TPConverterConstBase< TrigCaloClusterContainer, TrigCaloClusterContainer_p3 >, TPPtrVectorCnv< TRANS, TPIntegerVector_p2, CONV >, TPCnvVector< TileTrackMuFeatureContainer, TileTrackMuFeatureContainer_p3, TileTrackMuFeatureCnv_p3 >, TPCnvVector< TileMuFeatureContainer, TileMuFeatureContainer_p2, TileMuFeatureCnv_p2 >, T_AtlasHitsVectorCnv< TileHitVector, TileHitVector_p1, TileHitCnv_p1 >, TPConverterConstBase< std::vector< TrigMonTE >, std::vector< TrigMonTE_p1 > >, TPConverterConstBase< std::vector< TrigMonSeq >, std::vector< TrigMonSeq_p1 > >, TPConverterConstBase< std::vector< TrigMonRoi >, std::vector< TrigMonRoi_p1 > >, TPConverterConstBase< std::vector< TrigMonROBData >, std::vector< TrigMonROBData_p1 > >, TPConverterConstBase< std::vector< TrigMonROB >, std::vector< TrigMonROB_p1 > >, TPConverterConstBase< std::vector< TrigMonAlg >, std::vector< TrigMonAlg_p1 > >, TPConverterConstBase< std::vector< TrigConfSig >, std::vector< TrigConfSig_p1 > >, TPConverterConstBase< std::vector< TrigConfSeq >, std::vector< TrigConfSeq_p1 > >, TPConverterConstBase< std::vector< TrigConfChain >, std::vector< TrigConfChain_p1 > >, TPConverterConstBase< std::vector< TrigConfAlg >, std::vector< TrigConfAlg_p1 > >, TPPtrVectorCnv< Trk::TrackStates, std::vector< TPObjRef >, TrackStateOnSurfaceCnv_p1 >, TPPtrVectorCnv< Trk::TrackStates, std::vector< TPObjRef >, TrackStateOnSurfaceCnv_p3 >, TPPtrVectorCnv< Trk::TrackStates, std::vector< TPObjRef >, TrackStateOnSurfaceCnv_p2 >, TPPtrVectorCnv< TrigInDetTrackCollection, std::vector< TPObjRef >, ITPConverterFor< TrigInDetTrack > >, TPPtrVectorCnv< TrackInVertexVector, std::vector< TPObjRef >, TrigInDetTrackCnv_p3 >, TPPtrVectorCnv< TrackInVertexVector, std::vector< TPObjRef >, TrigInDetTrackCnv_p1 >, TPPtrVectorCnv< std::vector< Trk::VxTrackAtVertex * >, std::vector< TPObjRef >, ITPConverterFor< Trk::VxTrackAtVertex > >, TPPtrVectorCnv< std::vector< Trk::VxCandidate * >, std::vector< TPObjRef >, ITPConverterFor< Trk::VxCandidate > >, TPPtrVectorCnv< std::vector< const Trk::TrackParameters * >, std::vector< TPObjRef >, ITPConverterFor< Trk::TrackParameters > >, TPPtrVectorCnv< std::vector< Analysis::TauShot * >, std::vector< TPObjRef >, ITPConverterFor< Analysis::TauShot > >, TPPtrVectorCnv< std::vector< Analysis::TauPi0Cluster * >, std::vector< TPObjRef >, ITPConverterFor< Analysis::TauPi0Cluster > >, TPPtrVectorCnv< std::vector< Analysis::TauPi0Candidate * >, std::vector< TPObjRef >, ITPConverterFor< Analysis::TauPi0Candidate > >, TPPtrVectorCnv< MultiComponentStateOnSurfaceDV, std::vector< TPObjRef >, MultiComponentStateOnSurfaceCnv_p1 >, TPPtrVectorCnv< DataVector< const Trk::MeasurementBase >, std::vector< TPObjRef >, ITPConverterFor< Trk::MeasurementBase > >, TPConverterConstBase< std::vector< const JetTagInfoBase * >, std::vector< TPObjRef > >, TPConverterConstBase< std::vector< const JetAssociationBase * >, std::vector< TPObjRef > >, TPCnvVector< DataVector< eflowObject >, std::vector< eflowObject_p5 >, eflowObjectCnv_p5 >, TPCnvVector< DataVector< eflowObject >, std::vector< eflowObject_p4 >, eflowObjectCnv_p4 >, TPCnvVector< DataVector< eflowObject >, std::vector< eflowObject_p3 >, eflowObjectCnv_p3 >, TPCnvVector< DataVector< eflowObject >, std::vector< eflowObject_p2 >, eflowObjectCnv_p2 >, TPCnvVector< DataVector< eflowObject >, std::vector< eflowObject_p1 >, eflowObjectCnv_p1 >, TPCnvVector< SkimDecisionCollection, SkimDecisionCollection_p1, SkimDecisionCnv_p1 >, TPConverterConstBase< RingerRingsContainer, RingerRingsContainer_p2 >, TPCnvIDContFromIdentifier< TRANS, PERS, CONV >, TPCnvIDCont< TRANS, PERS, CONV >, TPCnvStdVector< TRANS, PERS, CONV >, TPCnvVector< TRANS, PERS, CONV >, TPValVectorCnv< TRANS, PERS, CONV >, TPPtrVectorCnv< TRANS, PERS, CONV >, TPConverterConstBase< TRANS, PERS >, TPAbstractPolyCnvConstBase< TRANS_BASE, TRANS, PERS >, T_AtlasHitsVectorCnv< TRANS, PERS, CONV >, T_AthenaHitsVectorCnv< TRANS, PERS, CONV >, TPConverterConstBase< JetCollection, ParticleJetContainer_p1 >, TPCnvVector< MuonFeatureDetailsContainer, MuonFeatureDetailsContainer_p2, MuonFeatureDetailsCnv_p2 >, TPCnvVector< MuonFeatureContainer, MuonFeatureContainer_p3, MuonFeatureCnv_p3 >, TPConverterConstBase< Analysis::MuonContainer, MuonContainer_p6 >, TPConverterConstBase< Analysis::MuonContainer, MuonContainer_p5 >, TPConverterConstBase< Analysis::MuonContainer, MuonContainer_p4 >, TPConverterConstBase< Analysis::MuonContainer, MuonContainer_p3 >, TPCnvVector< LumiBlockCollection, LumiBlockCollection_p2, LumiBlockRangeCnv_p2 >, TPCnvVector< LumiBlockCollection, LumiBlockCollection_p1, LumiBlockRangeCnv_p1 >, TPCnvVector< IsoMuonFeatureContainer, IsoMuonFeatureContainer_p3, IsoMuonFeatureCnv_p3 >, TPCnvVector< IsoMuonFeatureContainer, IsoMuonFeatureContainer_p2, IsoMuonFeatureCnv_p2 >, TPCnvVector< EventBookkeeperCollection, EventBookkeeperCollection_p2, EventBookkeeperCnv_p2 >, TPCnvVector< EventBookkeeperCollection, EventBookkeeperCollection_p1, EventBookkeeperCnv_p1 >, TPCnvVector< ElectronMuonTopoInfoContainer, ElectronMuonTopoInfoContainer_p1, ElectronMuonTopoInfoCnv_p1 >, TPCnvVector< CombinedMuonFeatureContainer, CombinedMuonFeatureContainer_p4, CombinedMuonFeatureCnv_p4 >, TPCnvVector< CombinedMuonFeatureContainer, CombinedMuonFeatureContainer_p3, CombinedMuonFeatureCnv_p3 >, and TPCnvVector< CombinedMuonFeatureContainer, CombinedMuonFeatureContainer_p2, CombinedMuonFeatureCnv_p2 >.

◆ persToTransUntyped()

template<class TRANS_BASE , class TRANS , class PERS >
virtual void TPAbstractPolyCnvBase< TRANS_BASE, TRANS, PERS >::persToTransUntyped ( const void *  pers,
void *  trans,
MsgStream &  log 
)
inlinevirtualinherited

Convert persistent object representation to transient.

Parameters
pers[IN] void* pointer to the persistent object
trans[OUT] void* pointer to the empty transient object
log[IN] output message stream

Implements ITPCnvBase.

Definition at line 400 of file TPConverter.h.

403  {
404  persToTrans (reinterpret_cast<const PERS*> (pers),
405  reinterpret_cast<TRANS*> (trans),
406  log);
407  }

◆ persToTransWithKey()

template<class TRANS_BASE , class TRANS , class PERS >
virtual void TPAbstractPolyCnvBase< TRANS_BASE, TRANS, PERS >::persToTransWithKey ( const PERS persObj,
TRANS *  transObj,
const std::string &  ,
MsgStream &  log 
)
inlinevirtualinherited

Convert persistent representation to transient one.

Copies data members from persistent object to an existing transient one. Needs to be implemented by the developer on the actual converter.

Parameters
persObj[IN] persistent object
transObj[IN] transient object
log[IN] output message stream

Reimplemented in TPConverterWithKeyBase< TRANS, PERS >.

Definition at line 376 of file TPConverter.h.

379  {
380  return persToTrans (persObj, transObj, log);
381  }

◆ persToTransWithKeyUntyped()

template<class TRANS_BASE , class TRANS , class PERS >
virtual void TPAbstractPolyCnvBase< TRANS_BASE, TRANS, PERS >::persToTransWithKeyUntyped ( const void *  pers,
void *  trans,
const std::string &  key,
MsgStream &  log 
)
inlinevirtualinherited

Convert persistent object representation to transient.

Parameters
pers[IN] void* pointer to the persistent object
trans[OUT] void* pointer to the empty transient object
key[IN] SG key of object being read.
log[IN] output message stream

Reimplemented from ITPCnvBase.

Definition at line 420 of file TPConverter.h.

424  {
425  persToTransWithKey (reinterpret_cast<const PERS*> (pers),
426  reinterpret_cast<TRANS*> (trans),
427  key,
428  log);
429  }

◆ pstoreToTrans()

template<class TRANS_BASE , class TRANS , class PERS >
virtual void TPAbstractPolyCnvBase< TRANS_BASE, TRANS, PERS >::pstoreToTrans ( unsigned  index,
TRANS_BASE *  trans,
MsgStream &  log 
)
inlinevirtualinherited

Convert persistent representation stored in the storage vector of the top-level object to transient.

Internal.

Parameters
index[IN] index of the persistent representation in the storage vector
trans[IN] empty transient object
log[IN] output message stream

Implements ITPConverterFor< TRANS_BASE >.

Reimplemented in TPConverterBase< Trk::TrackStates, std::vector< TPObjRef > >, TPConverterBase< TrigTrtHitCountsCollection, TrigTrtHitCountsCollection_p2 >, TPConverterBase< TrigTauTracksInfoCollection, TrigTauTracksInfoCollection_p2 >, TPConverterBase< TrigTauContainer, TrigTauContainer_p3 >, TPConverterBase< TrigTauClusterDetailsContainer, TrigTauClusterDetailsContainer_p2 >, TPConverterBase< TrigTauClusterContainer, TrigTauClusterContainer_p3 >, TPConverterBase< TrigTauClusterContainer, TrigTauClusterContainer_p4 >, TPConverterBase< TrigTauClusterContainer, TrigTauClusterContainer_p5 >, TPConverterBase< TrigT2MbtsBitsContainer, TrigT2MbtsBitsContainer_p3 >, TPConverterBase< TrigT2JetContainer, TrigT2JetContainer_p3 >, TPConverterBase< TrigSpacePointCountsCollection, TrigSpacePointCountsCollection_p4 >, TPConverterBase< TrigRoiDescriptorCollection, TrigRoiDescriptorCollection_p2 >, TPConverterBase< TrigRoiDescriptorCollection, TrigRoiDescriptorCollection_p3 >, TPConverterBase< TrigRNNOutputContainer, TrigRNNOutputContainer_p2 >, TPConverterBase< TrigPhotonContainer, TrigPhotonContainer_p3 >, TPConverterBase< TrigPassFlagsCollection, TrigPassFlagsCollection_p1 >, TPConverterBase< TrigPassBitsCollection, TrigPassBitsCollection_p1 >, TPConverterBase< TrigMuonEFIsolationContainer, TrigMuonEFIsolationContainer_p2 >, TPConverterBase< TrigMuonEFIsolationContainer, TrigMuonEFIsolationContainer_p1 >, TPConverterBase< TrigMuonEFContainer, TrigMuonEFContainer_p2 >, TPConverterBase< TrigMissingETContainer, TrigMissingETContainer_p3 >, TPConverterBase< TrigL2BjetContainer, TrigL2BjetContainer_p3 >, TPConverterBase< TrigInDetTrackCollection, std::vector< TPObjRef > >, TPConverterBase< TrigEMClusterContainer, TrigEMClusterContainer_p3 >, TPConverterBase< TrigEMClusterContainer, TrigEMClusterContainer_p4 >, TPConverterBase< TrigElectronContainer, TrigElectronContainer_p3 >, TPConverterBase< TrigCompositeContainer, TrigCompositeContainer_p1 >, TPConverterBase< TrigCaloClusterContainer, TrigCaloClusterContainer_p3 >, TPConverterBase< TRANS, PERS >, TPCnvBase< TRANS, TPIntegerVector_p2 >, TPCnvBase< TRANS, TPIntegerVector_p1 >, TPConverterBase< TrackInVertexVector, std::vector< TPObjRef > >, TPConverterBase< TileTrackMuFeatureContainer, TileTrackMuFeatureContainer_p3 >, TPConverterBase< TileMuFeatureContainer, TileMuFeatureContainer_p2 >, TPConverterBase< TileHitVector, TileHitVector_p1 >, TPConverterBase< std::vector< Trk::VxTrackAtVertex * >, std::vector< TPObjRef > >, TPConverterBase< std::vector< Trk::VxCandidate * >, std::vector< TPObjRef > >, TPConverterBase< std::vector< TrigMonTE >, std::vector< TrigMonTE_p1 > >, TPConverterBase< std::vector< TrigMonSeq >, std::vector< TrigMonSeq_p1 > >, TPConverterBase< std::vector< TrigMonRoi >, std::vector< TrigMonRoi_p1 > >, TPConverterBase< std::vector< TrigMonROBData >, std::vector< TrigMonROBData_p1 > >, TPConverterBase< std::vector< TrigMonROB >, std::vector< TrigMonROB_p1 > >, TPConverterBase< std::vector< TrigMonAlg >, std::vector< TrigMonAlg_p1 > >, TPConverterBase< std::vector< TrigConfSig >, std::vector< TrigConfSig_p1 > >, TPConverterBase< std::vector< TrigConfSeq >, std::vector< TrigConfSeq_p1 > >, TPConverterBase< std::vector< TrigConfChain >, std::vector< TrigConfChain_p1 > >, TPConverterBase< std::vector< TrigConfAlg >, std::vector< TrigConfAlg_p1 > >, TPConverterBase< std::vector< const Trk::TrackParameters * >, std::vector< TPObjRef > >, TPConverterBase< std::vector< const JetTagInfoBase * >, std::vector< TPObjRef > >, TPConverterBase< std::vector< const JetAssociationBase * >, std::vector< TPObjRef > >, TPConverterBase< std::vector< Analysis::TauShot * >, std::vector< TPObjRef > >, TPConverterBase< std::vector< Analysis::TauPi0Cluster * >, std::vector< TPObjRef > >, TPConverterBase< std::vector< Analysis::TauPi0Candidate * >, std::vector< TPObjRef > >, TPConverterBase< SkimDecisionCollection, SkimDecisionCollection_p1 >, TPConverterBase< RingerRingsContainer, RingerRingsContainer_p2 >, TPConverterBase< MuonFeatureDetailsContainer, MuonFeatureDetailsContainer_p2 >, TPConverterBase< MuonFeatureContainer, MuonFeatureContainer_p3 >, TPConverterBase< MultiComponentStateOnSurfaceDV, std::vector< TPObjRef > >, TPConverterBase< LumiBlockCollection, LumiBlockCollection_p2 >, TPConverterBase< LumiBlockCollection, LumiBlockCollection_p1 >, TPConverterBase< JetCollection, ParticleJetContainer_p1 >, TPConverterBase< IsoMuonFeatureContainer, IsoMuonFeatureContainer_p2 >, TPConverterBase< IsoMuonFeatureContainer, IsoMuonFeatureContainer_p3 >, TPConverterBase< EventBookkeeperCollection, EventBookkeeperCollection_p2 >, TPConverterBase< EventBookkeeperCollection, EventBookkeeperCollection_p1 >, TPConverterBase< ElectronMuonTopoInfoContainer, ElectronMuonTopoInfoContainer_p1 >, TPConverterBase< DataVector< eflowObject >, std::vector< eflowObject_p1 > >, TPConverterBase< DataVector< eflowObject >, std::vector< eflowObject_p5 > >, TPConverterBase< DataVector< eflowObject >, std::vector< eflowObject_p4 > >, TPConverterBase< DataVector< eflowObject >, std::vector< eflowObject_p3 > >, TPConverterBase< DataVector< eflowObject >, std::vector< eflowObject_p2 > >, TPConverterBase< DataVector< const Trk::MeasurementBase >, std::vector< TPObjRef > >, TPConverterBase< CombinedMuonFeatureContainer, CombinedMuonFeatureContainer_p2 >, TPConverterBase< CombinedMuonFeatureContainer, CombinedMuonFeatureContainer_p4 >, TPConverterBase< CombinedMuonFeatureContainer, CombinedMuonFeatureContainer_p3 >, TPConverterBase< Analysis::MuonContainer, MuonContainer_p6 >, TPConverterBase< Analysis::MuonContainer, MuonContainer_p5 >, TPConverterBase< Analysis::MuonContainer, MuonContainer_p4 >, and TPConverterBase< Analysis::MuonContainer, MuonContainer_p3 >.

Definition at line 494 of file TPConverter.h.

494  {
495  assert (index < m_pStorage->size());
496  TRANS* trans_der = dynamic_cast<TRANS*>(trans);
497  if (!trans_der) std::abort();
498  this->persToTrans( &(*m_pStorage)[index], trans_der, log );
499  }

◆ reservePStorage()

template<class TRANS_BASE , class TRANS , class PERS >
virtual void TPAbstractPolyCnvBase< TRANS_BASE, TRANS, PERS >::reservePStorage ( size_t  size)
inlinevirtualinherited

Reserve 'size' elements for persistent storage.

Implements ITPConverter.

Definition at line 573 of file TPConverter.h.

573  {
574  m_pStorage->reserve( size );
575  }

◆ setPStorage()

template<class TRANS_BASE , class TRANS , class PERS >
void TPAbstractPolyCnvBase< TRANS_BASE, TRANS, PERS >::setPStorage ( std::vector< PERS > *  storage)
inlineinherited

Tell this converter which storage vector it should use to store or retrieve persistent representations.

Parameters
storage[IN] the address of the storage vector

Definition at line 551 of file TPConverter.h.

551  {
552  m_pStorage = storage;
553  m_curRecLevel = 0;
554  }

◆ setReadingFlag()

void ITPConverterFor< TRANS_BASE >::setReadingFlag ( )
inlineinherited

Definition at line 234 of file TPConverter.h.

234 { m_wasUsedForReading = true; }

◆ setRecursive()

template<class TRANS_BASE , class TRANS , class PERS >
void TPAbstractPolyCnvBase< TRANS_BASE, TRANS, PERS >::setRecursive ( bool  flag = true)
inlineinherited

Tell the converter if it should work in recursive mode slower but it can safely handle recursion.

Definition at line 559 of file TPConverter.h.

559  {
560  m_recursive = flag;
561  }

◆ setRuntimeTopConverter()

virtual void ITPConverterFor< TRANS_BASE >::setRuntimeTopConverter ( TopLevelTPCnvBase topConverter)
inlinevirtualinherited

Set runtime top-level converter - usually it is the owning TL converter, but in case of extended objects it will be the TL converter of the extended object.

Parameters
topConverter[IN] runtime top-level converter for this converter

Implements ITPConverter.

Definition at line 215 of file TPConverter.h.

◆ setTopConverter()

virtual void ITPConverterFor< TRANS_BASE >::setTopConverter ( TopLevelTPCnvBase topConverter,
const TPObjRef::typeID_t TPtypeID 
)
inlinevirtualinherited

Set which top-level converter owns this elemental converter, and what TPtypeID was assigned to the persistent objects it produces.

Parameters
topConverter[IN] the top-level converter owning this converter
TPtypeID[IN] TP type id for persistent objects (used in TP refs)

Implements ITPConverter.

Definition at line 221 of file TPConverter.h.

223  {
225  m_pStorageTID = TPtypeID;
226  m_pStorageTIDvalue = TPtypeID.value();
228  }

◆ topConverter() [1/3]

virtual TopLevelTPCnvBase* ITPConverterFor< TRANS_BASE >::topConverter ( )
inlinevirtualinherited

return the top-level converter for this elemental TP converter

Returns
TopLevelTPCnvBas

Reimplemented from ITPConverter.

Definition at line 191 of file TPConverter.h.

191  {
192  return m_topConverter;
193  }

◆ topConverter() [2/3]

virtual const TopLevelTPCnvBase* ITPConverter::topConverter ( ) const
inlinevirtualinherited

Reimplemented in ITPConverterFor< TRANS >.

Definition at line 58 of file TPTools/TPTools/ITPConverter.h.

58 { return 0; }

◆ topConverter() [3/3]

virtual const TopLevelTPCnvBase* ITPConverterFor< TRANS_BASE >::topConverter ( ) const
inlinevirtualinherited

return the top-level converter for this elemental TP converter

Returns
TopLevelTPCnvBas

Reimplemented from ITPConverter.

Definition at line 196 of file TPConverter.h.

196  {
197  return m_topConverter;
198  }

◆ toPersistent()

TPObjRef ITPConverterFor< TRANS_BASE >::toPersistent ( CNV **  cnv,
const typename CNV::TransBase_t *  transObj,
MsgStream &  log 
) const
inlineinherited

Persistify an object and store the persistent represenation in the storage vector of the top-level persistent object.

The correct converter is located using the actual object type.

Parameters
cnv[IN/OUT] pointer to the converter, usually 0 at the start. Once the right converter is found, this pointer will be set so the search is done only once
transObj[IN] transient object
log[IN] output message stream
Returns
TPObjRef TP reference to the persistent representation stored in the storage vector of the top-level persistent object

Definition at line 119 of file TPConverter.h.

119  {
120  if( !transObj ) return TPObjRef();
121  CNV *temp_cnv_p = 0;
122  if( !cnv ) cnv = &temp_cnv_p;
123  if( !*cnv || (*cnv)->wasUsedForReading() ) {
124  // don't trust the converter if it was used for reading, find again
125  *cnv = converterForType( *cnv, typeid(*transObj), log );
126  if( !*cnv ) return TPObjRef();
127  (*cnv)->clearReadingFlag();
128  }
129  return (**cnv).virt_toPersistent(transObj, log);
130  }

◆ toPersistentWithKey_impl()

template<class TRANS_BASE , class TRANS , class PERS >
TPObjRef TPAbstractPolyCnvBase< TRANS_BASE, TRANS, PERS >::toPersistentWithKey_impl ( const TRANS *  trans,
const std::string &  key,
MsgStream &  log 
)
inherited

Convert transient object to persistent representation.

Stores the result in the storage vector of the top-level object and returns a TP Ref to it.

Parameters
trans[IN] transient object
key[IN] SG key of object being converted
log[IN] output message stream
Returns
TP reference to the persistent representation

◆ transBaseTInfo() [1/2]

const std::type_info& ITPConverterFor< TRANS_BASE >::transBaseTInfo ( ) const
inlineinherited

return C++ type id of the common base transient type for all converters for a group of polymorphic types

Returns
std::type_info& this method is not overwritten in the subclasses like transientTInfo()

Definition at line 205 of file TPConverter.h.

205 { return typeid(TRANS); }

◆ transBaseTInfo() [2/2]

virtual const std::type_info& ITPConverter::transBaseTInfo ( ) const
pure virtualinherited

return C++ type id of the common base transient type for all converters for a group of polymorphic types

Returns
std::type_info&

Implemented in ITPConverterFor< TRANS >.

◆ transientTInfo() [1/2]

virtual const std::type_info& ITPConverterFor< TRANS_BASE >::transientTInfo ( ) const
inlinevirtualinherited

return C++ type id of the transient class this converter is for

Returns
std::type_info&

Definition at line 201 of file TPConverter.h.

201 { return typeid(TRANS); }

◆ transientTInfo() [2/2]

template<class TRANS_BASE , class TRANS , class PERS >
virtual const std::type_info& TPAbstractPolyCnvBase< TRANS_BASE, TRANS, PERS >::transientTInfo ( ) const
inlinevirtualinherited

return C++ type id of the transient class this converter is for

Returns
std::type_info&

Implements ITPCnvBase.

Definition at line 479 of file TPConverter.h.

479 { return typeid(TRANS); }

◆ transToPers() [1/2]

void PixelClusterCnv_p3::transToPers ( const InDet::PixelCluster transObj,
InDet::PixelCluster_p3 persObj,
MsgStream &  log 
)

Definition at line 127 of file PixelClusterCnv_p3.cxx.

128 {
129 // log << MSG::VERBOSE << "In PixelCluster::transToPers" << endmsg;
130  m_swCnv.transToPers(&transObj->width(), &persObj->m_width, log);
131 
132  // base class:
133  //
134 
135  // Local Position
136  persObj->m_localPosX = transObj->localPosition()[Trk::locX];
137  persObj->m_localPosY = transObj->localPosition()[Trk::locY];
138 
139  // Error Matrix
140 
141  persObj->m_mat00 = (transObj->localCovariance())(0,0);
142  persObj->m_mat01 = (transObj->localCovariance())(0,1);
143  persObj->m_mat11 = (transObj->localCovariance())(1,1);
144 
145  // Charge balance
146  persObj->m_omegax = transObj->omegax();
147  persObj->m_omegay = transObj->omegay();
148 
149  // List of Id of the cluster
150 
151  // For 64-bit ids, we set m_clusId to 0 and instead save the
152  // diff in m_rdoList as the first element
153  persObj->m_rdoList.resize(transObj->rdoList().size() + 1);
154 
156  // Get base identifier to calculate diffs
157  Identifier clusId = transObj->identify();
158  persObj->m_clusId = 0;
159  // Save offset to wafer id for the cluster id
160  Identifier waferId = m_pixId2->wafer_id(clusId); // remove the eta/phi of channel id
161  *pit = static_cast<InDet::PixelCluster_p3::rdo_diff_type>( m_pixId2->calc_offset(waferId, clusId) );
162  ++pit;
163 
164  for (const Identifier& id : transObj->rdoList()) {
165  *pit = static_cast<InDet::PixelCluster_p3::rdo_diff_type>( m_pixId2->calc_offset(clusId, id) );
166  ++pit;
167  }
168 
169  // Setting of cluster properties:
170  persObj->m_properties = 0;
171  if ( transObj->gangedPixel() ) persObj->m_properties |= (1<<24);
172  if ( transObj->isFake() ) persObj->m_properties |= (1<<25);
173  if ( transObj->isAmbiguous() ) persObj->m_properties |= (1<<26);
174  persObj->m_properties |= ((transObj->LVL1A() & 0xF)<<28);
175 
176  if ( transObj->totalCharge()>0. ) {
177  persObj->m_properties |= (1<<27);
178  persObj->m_properties |= ( (int)(transObj->totalCharge()+0.5) & 0xFFFFFF );
179  } else {
180  persObj->m_properties |= ( transObj->totalToT() & 0xFFFFFF );
181  }
182  // needed for pixel cluster splitting
183  persObj->m_splitInfo = transObj->splitInfoRaw();
184  persObj->m_chargeList = transObj->chargeList();
185 }

◆ transToPers() [2/2]

template<class TRANS_BASE , class TRANS , class PERS >
virtual void TPAbstractPolyCnvBase< TRANS_BASE, TRANS, PERS >::transToPers ( const TRANS *  transObj,
PERS persObj,
MsgStream &  log 
)
pure virtualinherited

Convert transient representation to persistent one.

Copies data members from transient object to an existing persistent one. Needs to be implemented by the developer on the actual converter.

Parameters
transObj[IN] transient object
persObj[IN] persistent object
log[IN] output message stream

Implemented in TPPtrVectorCnv< Trk::TrackStates, std::vector< TPObjRef >, TrackStateOnSurfaceCnv_p1 >, TPPtrVectorCnv< Trk::TrackStates, std::vector< TPObjRef >, TrackStateOnSurfaceCnv_p3 >, TPPtrVectorCnv< Trk::TrackStates, std::vector< TPObjRef >, TrackStateOnSurfaceCnv_p2 >, TPCnvVector< TrigTrtHitCountsCollection, TrigTrtHitCountsCollection_p2, TrigTrtHitCountsCnv_p2 >, TPCnvVector< TrigTauTracksInfoCollection, TrigTauTracksInfoCollection_p2, TrigTauTracksInfoCnv_p2 >, TPCnvVector< TrigTauContainer, TrigTauContainer_p3, TrigTauCnv_p3 >, TPCnvVector< TrigTauClusterDetailsContainer, TrigTauClusterDetailsContainer_p2, TrigTauClusterDetailsCnv_p2 >, TPCnvVector< TrigTauClusterContainer, TrigTauClusterContainer_p5, TrigTauClusterCnv_p5 >, TPCnvVector< TrigTauClusterContainer, TrigTauClusterContainer_p4, TrigTauClusterCnv_p4 >, TPCnvVector< TrigTauClusterContainer, TrigTauClusterContainer_p3, TrigTauClusterCnv_p3 >, TPCnvVector< TrigT2MbtsBitsContainer, TrigT2MbtsBitsContainer_p3, TrigT2MbtsBitsCnv_p3 >, TPCnvVector< TrigT2JetContainer, TrigT2JetContainer_p3, TrigT2JetCnv_p3 >, TPCnvVector< TrigSpacePointCountsCollection, TrigSpacePointCountsCollection_p4, TrigSpacePointCountsCnv_p4 >, TPCnvVector< TrigRoiDescriptorCollection, TrigRoiDescriptorCollection_p3, TrigRoiDescriptorCnv_p3 >, TPCnvVector< TrigRoiDescriptorCollection, TrigRoiDescriptorCollection_p2, TrigRoiDescriptorCnv_p2 >, TPCnvVector< TrigRNNOutputContainer, TrigRNNOutputContainer_p2, TrigRNNOutputCnv_p2 >, TPCnvVector< TrigPhotonContainer, TrigPhotonContainer_p3, TrigPhotonCnv_p3 >, TPCnvVector< TrigPassFlagsCollection, TrigPassFlagsCollection_p1, TrigPassFlagsCnv_p1 >, TPCnvVector< TrigPassBitsCollection, TrigPassBitsCollection_p1, TrigPassBitsCnv_p1 >, TPCnvVector< TrigMuonEFIsolationContainer, TrigMuonEFIsolationContainer_p2, TrigMuonEFIsolationCnv_p2 >, TPCnvVector< TrigMuonEFIsolationContainer, TrigMuonEFIsolationContainer_p1, TrigMuonEFIsolationCnv_p1 >, TPCnvVector< TrigMuonEFContainer, TrigMuonEFContainer_p2, TrigMuonEFCnv_p2 >, TPCnvVector< TrigMissingETContainer, TrigMissingETContainer_p3, TrigMissingETCnv_p3 >, TPCnvVector< TrigL2BjetContainer, TrigL2BjetContainer_p3, TrigL2BjetCnv_p3 >, TPPtrVectorCnv< TrigInDetTrackCollection, std::vector< TPObjRef >, ITPConverterFor< TrigInDetTrack > >, TPCnvVector< TrigEMClusterContainer, TrigEMClusterContainer_p4, TrigEMClusterCnv_p4 >, TPCnvVector< TrigEMClusterContainer, TrigEMClusterContainer_p3, TrigEMClusterCnv_p3 >, TPCnvVector< TrigElectronContainer, TrigElectronContainer_p3, TrigElectronCnv_p3 >, TPCnvVector< TrigCompositeContainer, TrigCompositeContainer_p1, TrigCompositeCnv_p1 >, TPConverterConstBase< TrigCaloClusterContainer, TrigCaloClusterContainer_p3 >, TPPolyVectorCnv< TRANS, TPIntegerVector_p2, CONV >, TPPtrVectorCnv< TRANS, TPIntegerVector_p2, CONV >, TPCnvIDContFromIdentifier< TRANS, PERS, CONV >, TPCnvIDCont< TRANS, PERS, CONV >, TPCnvStdVector< TRANS, PERS, CONV >, TPCnvVector< TRANS, PERS, CONV >, TPValVectorCnv< TRANS, PERS, CONV >, TPPolyVectorCnv< TRANS, PERS, CONV >, TPPtrVectorCnv< TRANS, PERS, CONV >, TPConverterConstBase< TRANS, PERS >, TPAbstractPolyCnvConstBase< TRANS_BASE, TRANS, PERS >, T_AtlasHitsVectorCnv< TRANS, PERS, CONV >, T_AthenaHitsVectorCnv< TRANS, PERS, CONV >, TPPtrVectorCnv< TrackInVertexVector, std::vector< TPObjRef >, TrigInDetTrackCnv_p3 >, TPPtrVectorCnv< TrackInVertexVector, std::vector< TPObjRef >, TrigInDetTrackCnv_p1 >, TPCnvVector< TileTrackMuFeatureContainer, TileTrackMuFeatureContainer_p3, TileTrackMuFeatureCnv_p3 >, TPCnvVector< TileMuFeatureContainer, TileMuFeatureContainer_p2, TileMuFeatureCnv_p2 >, T_AtlasHitsVectorCnv< TileHitVector, TileHitVector_p1, TileHitCnv_p1 >, TPPolyVectorCnv< std::vector< Trk::VxTrackAtVertex * >, std::vector< TPObjRef >, ITPConverterFor< Trk::VxTrackAtVertex > >, TPPtrVectorCnv< std::vector< Trk::VxTrackAtVertex * >, std::vector< TPObjRef >, ITPConverterFor< Trk::VxTrackAtVertex > >, TPPtrVectorCnv< std::vector< Trk::VxCandidate * >, std::vector< TPObjRef >, ITPConverterFor< Trk::VxCandidate > >, TPConverterConstBase< std::vector< TrigMonTE >, std::vector< TrigMonTE_p1 > >, TPConverterConstBase< std::vector< TrigMonSeq >, std::vector< TrigMonSeq_p1 > >, TPConverterConstBase< std::vector< TrigMonRoi >, std::vector< TrigMonRoi_p1 > >, TPConverterConstBase< std::vector< TrigMonROBData >, std::vector< TrigMonROBData_p1 > >, TPConverterConstBase< std::vector< TrigMonROB >, std::vector< TrigMonROB_p1 > >, TPConverterConstBase< std::vector< TrigMonAlg >, std::vector< TrigMonAlg_p1 > >, TPConverterConstBase< std::vector< TrigConfSig >, std::vector< TrigConfSig_p1 > >, TPConverterConstBase< std::vector< TrigConfSeq >, std::vector< TrigConfSeq_p1 > >, TPConverterConstBase< std::vector< TrigConfChain >, std::vector< TrigConfChain_p1 > >, TPConverterConstBase< std::vector< TrigConfAlg >, std::vector< TrigConfAlg_p1 > >, TPPolyVectorCnv< std::vector< const Trk::TrackParameters * >, std::vector< TPObjRef >, ITPConverterFor< Trk::TrackParameters > >, TPPtrVectorCnv< std::vector< const Trk::TrackParameters * >, std::vector< TPObjRef >, ITPConverterFor< Trk::TrackParameters > >, TPConverterConstBase< std::vector< const JetTagInfoBase * >, std::vector< TPObjRef > >, TPConverterConstBase< std::vector< const JetAssociationBase * >, std::vector< TPObjRef > >, TPPtrVectorCnv< std::vector< Analysis::TauShot * >, std::vector< TPObjRef >, ITPConverterFor< Analysis::TauShot > >, TPPtrVectorCnv< std::vector< Analysis::TauPi0Cluster * >, std::vector< TPObjRef >, ITPConverterFor< Analysis::TauPi0Cluster > >, TPPtrVectorCnv< std::vector< Analysis::TauPi0Candidate * >, std::vector< TPObjRef >, ITPConverterFor< Analysis::TauPi0Candidate > >, TPCnvVector< SkimDecisionCollection, SkimDecisionCollection_p1, SkimDecisionCnv_p1 >, TPConverterConstBase< RingerRingsContainer, RingerRingsContainer_p2 >, TPCnvVector< MuonFeatureDetailsContainer, MuonFeatureDetailsContainer_p2, MuonFeatureDetailsCnv_p2 >, TPCnvVector< MuonFeatureContainer, MuonFeatureContainer_p3, MuonFeatureCnv_p3 >, TPPtrVectorCnv< MultiComponentStateOnSurfaceDV, std::vector< TPObjRef >, MultiComponentStateOnSurfaceCnv_p1 >, TPCnvVector< LumiBlockCollection, LumiBlockCollection_p2, LumiBlockRangeCnv_p2 >, TPCnvVector< LumiBlockCollection, LumiBlockCollection_p1, LumiBlockRangeCnv_p1 >, TPConverterConstBase< JetCollection, ParticleJetContainer_p1 >, TPCnvVector< IsoMuonFeatureContainer, IsoMuonFeatureContainer_p3, IsoMuonFeatureCnv_p3 >, TPCnvVector< IsoMuonFeatureContainer, IsoMuonFeatureContainer_p2, IsoMuonFeatureCnv_p2 >, TPCnvVector< EventBookkeeperCollection, EventBookkeeperCollection_p2, EventBookkeeperCnv_p2 >, TPCnvVector< EventBookkeeperCollection, EventBookkeeperCollection_p1, EventBookkeeperCnv_p1 >, TPCnvVector< ElectronMuonTopoInfoContainer, ElectronMuonTopoInfoContainer_p1, ElectronMuonTopoInfoCnv_p1 >, TPCnvVector< DataVector< eflowObject >, std::vector< eflowObject_p5 >, eflowObjectCnv_p5 >, TPCnvVector< DataVector< eflowObject >, std::vector< eflowObject_p4 >, eflowObjectCnv_p4 >, TPCnvVector< DataVector< eflowObject >, std::vector< eflowObject_p3 >, eflowObjectCnv_p3 >, TPCnvVector< DataVector< eflowObject >, std::vector< eflowObject_p2 >, eflowObjectCnv_p2 >, TPCnvVector< DataVector< eflowObject >, std::vector< eflowObject_p1 >, eflowObjectCnv_p1 >, TPPolyVectorCnv< DataVector< const Trk::MeasurementBase >, std::vector< TPObjRef >, ITPConverterFor< Trk::MeasurementBase > >, TPPtrVectorCnv< DataVector< const Trk::MeasurementBase >, std::vector< TPObjRef >, ITPConverterFor< Trk::MeasurementBase > >, TPCnvVector< CombinedMuonFeatureContainer, CombinedMuonFeatureContainer_p4, CombinedMuonFeatureCnv_p4 >, TPCnvVector< CombinedMuonFeatureContainer, CombinedMuonFeatureContainer_p3, CombinedMuonFeatureCnv_p3 >, TPCnvVector< CombinedMuonFeatureContainer, CombinedMuonFeatureContainer_p2, CombinedMuonFeatureCnv_p2 >, TPConverterConstBase< Analysis::MuonContainer, MuonContainer_p6 >, TPConverterConstBase< Analysis::MuonContainer, MuonContainer_p5 >, TPConverterConstBase< Analysis::MuonContainer, MuonContainer_p4 >, and TPConverterConstBase< Analysis::MuonContainer, MuonContainer_p3 >.

◆ transToPersUntyped()

template<class TRANS_BASE , class TRANS , class PERS >
virtual void TPAbstractPolyCnvBase< TRANS_BASE, TRANS, PERS >::transToPersUntyped ( const void *  trans,
void *  pers,
MsgStream &  log 
)
inlinevirtualinherited

Convert transient object representation to persistent.

Parameters
trans[IN] void* pointer to the transient object
pers[OUT] void* pointer to the empty persistent object
log[IN] output message stream

Implements ITPCnvBase.

Definition at line 410 of file TPConverter.h.

413  {
414  transToPers (reinterpret_cast<const TRANS*> (trans),
415  reinterpret_cast<PERS*> (pers),
416  log);
417  }

◆ transToPersWithKey()

template<class TRANS_BASE , class TRANS , class PERS >
virtual void TPAbstractPolyCnvBase< TRANS_BASE, TRANS, PERS >::transToPersWithKey ( const TRANS *  transObj,
PERS persObj,
const std::string &  ,
MsgStream &  log 
)
inlinevirtualinherited

Convert transient representation to persistent one.

Copies data members from transient object to an existing persistent one. Needs to be implemented by the developer on the actual converter.

Parameters
transObj[IN] transient object
persObj[IN] persistent object
key[IN] SG key of object being written.
log[IN] output message stream

Reimplemented in TPConverterWithKeyBase< TRANS, PERS >.

Definition at line 392 of file TPConverter.h.

395  {
396  return transToPers (transObj, persObj, log);
397  }

◆ transToPersWithKeyUntyped()

template<class TRANS_BASE , class TRANS , class PERS >
virtual void TPAbstractPolyCnvBase< TRANS_BASE, TRANS, PERS >::transToPersWithKeyUntyped ( const void *  trans,
void *  pers,
const std::string &  key,
MsgStream &  log 
)
inlinevirtualinherited

Convert transient object representation to persistent.

Parameters
trans[IN] void* pointer to the transient object
pers[OUT] void* pointer to the empty persistent object
key[IN] SG key of object being written.
log[IN] output message stream

Reimplemented from ITPCnvBase.

Definition at line 432 of file TPConverter.h.

436  {
437  transToPersWithKey (reinterpret_cast<const TRANS*> (trans),
438  reinterpret_cast<PERS*> (pers),
439  key,
440  log);
441  }

◆ typeID() [1/2]

virtual const TPObjRef::typeID_t& ITPConverterFor< TRANS_BASE >::typeID ( ) const
inlinevirtualinherited

Return TP typeID for persistent objects produced by this converter.

Returns
TPObjRef::typeID_t&

Definition at line 208 of file TPConverter.h.

208 { return m_pStorageTID; }

◆ typeID() [2/2]

virtual const TPObjRef::typeID_t& ITPConverter::typeID ( ) const
pure virtualinherited

Return TP typeID for persistent objects produced by this converter.

Returns
TPObjRef::typeID_t&

Implemented in ITPConverterFor< TRANS >.

◆ typeIDvalue()

unsigned ITPConverterFor< TRANS_BASE >::typeIDvalue ( ) const
inlineinherited

inlined non-virtual version to get the typeID value fast

Definition at line 211 of file TPConverter.h.

211 { return m_pStorageTIDvalue; }

◆ virt_createTransFromPStore()

template<class TRANS_BASE , class TRANS , class PERS >
virtual TRANS* TPPolyCnvBase< TRANS_BASE, TRANS, PERS >::virt_createTransFromPStore ( unsigned  index,
MsgStream &  log 
)
inlinevirtualinherited

Internal interface method that is used to invoke the real conversion method (createTransient)

Parameters
index[IN] index of the persistent object in the storage vector
log[IN] output message stream
Returns
Created transient object (by pointer)

Reimplemented from TPAbstractPolyCnvBase< TRANS_BASE, TRANS, PERS >.

Definition at line 706 of file TPConverter.h.

706  {
707  assert (index < this->m_pStorage->size());
708  return createTransient( &(*this->m_pStorage)[index], log );
709  }

◆ virt_createTransFromPStoreWithKey()

template<class TRANS_BASE , class TRANS , class PERS >
virtual TRANS* TPPolyCnvBase< TRANS_BASE, TRANS, PERS >::virt_createTransFromPStoreWithKey ( unsigned  index,
const std::string &  key,
MsgStream &  log 
)
inlinevirtualinherited

Internal interface method that is used to invoke the real conversion method (createTransient)

Parameters
index[IN] index of the persistent object in the storage vector
key[IN] SG key of the object being converted
log[IN] output message stream
Returns
Created transient object (by pointer)

Reimplemented from TPAbstractPolyCnvBase< TRANS_BASE, TRANS, PERS >.

Definition at line 718 of file TPConverter.h.

721  {
722  assert (index < this->m_pStorage->size());
723  return createTransientWithKey( &(*this->m_pStorage)[index], key, log );
724  }

◆ virt_toPersistent()

template<class TRANS_BASE , class TRANS , class PERS >
virtual TPObjRef TPAbstractPolyCnvBase< TRANS_BASE, TRANS, PERS >::virt_toPersistent ( const TRANS_BASE *  trans,
MsgStream &  log 
)
inlinevirtualinherited

Internal interface method that is used to invoke the real conversion method (toPersistent_impl) in the derived converter.

Parameters
trans[IN] transient object
log[IN] output message stream
Returns
TPObjRef TP reference to the persistent representation stored in the storage vector of the top-level persistent object Here toPersistent_impl is invoked with the dynamic cast of the transient type pointer to it's actual type

Implements ITPConverterFor< TRANS_BASE >.

Reimplemented in TPConverterBase< Trk::TrackStates, std::vector< TPObjRef > >, TPConverterBase< TrigTrtHitCountsCollection, TrigTrtHitCountsCollection_p2 >, TPConverterBase< TrigTauTracksInfoCollection, TrigTauTracksInfoCollection_p2 >, TPConverterBase< TrigTauContainer, TrigTauContainer_p3 >, TPConverterBase< TrigTauClusterDetailsContainer, TrigTauClusterDetailsContainer_p2 >, TPConverterBase< TrigTauClusterContainer, TrigTauClusterContainer_p3 >, TPConverterBase< TrigTauClusterContainer, TrigTauClusterContainer_p4 >, TPConverterBase< TrigTauClusterContainer, TrigTauClusterContainer_p5 >, TPConverterBase< TrigT2MbtsBitsContainer, TrigT2MbtsBitsContainer_p3 >, TPConverterBase< TrigT2JetContainer, TrigT2JetContainer_p3 >, TPConverterBase< TrigSpacePointCountsCollection, TrigSpacePointCountsCollection_p4 >, TPConverterBase< TrigRoiDescriptorCollection, TrigRoiDescriptorCollection_p2 >, TPConverterBase< TrigRoiDescriptorCollection, TrigRoiDescriptorCollection_p3 >, TPConverterBase< TrigRNNOutputContainer, TrigRNNOutputContainer_p2 >, TPConverterBase< TrigPhotonContainer, TrigPhotonContainer_p3 >, TPConverterBase< TrigPassFlagsCollection, TrigPassFlagsCollection_p1 >, TPConverterBase< TrigPassBitsCollection, TrigPassBitsCollection_p1 >, TPConverterBase< TrigMuonEFIsolationContainer, TrigMuonEFIsolationContainer_p2 >, TPConverterBase< TrigMuonEFIsolationContainer, TrigMuonEFIsolationContainer_p1 >, TPConverterBase< TrigMuonEFContainer, TrigMuonEFContainer_p2 >, TPConverterBase< TrigMissingETContainer, TrigMissingETContainer_p3 >, TPConverterBase< TrigL2BjetContainer, TrigL2BjetContainer_p3 >, TPConverterBase< TrigInDetTrackCollection, std::vector< TPObjRef > >, TPConverterBase< TrigEMClusterContainer, TrigEMClusterContainer_p3 >, TPConverterBase< TrigEMClusterContainer, TrigEMClusterContainer_p4 >, TPConverterBase< TrigElectronContainer, TrigElectronContainer_p3 >, TPConverterBase< TrigCompositeContainer, TrigCompositeContainer_p1 >, TPConverterBase< TrigCaloClusterContainer, TrigCaloClusterContainer_p3 >, TPConverterBase< TRANS, PERS >, TPCnvBase< TRANS, TPIntegerVector_p2 >, TPCnvBase< TRANS, TPIntegerVector_p1 >, TPConverterBase< TrackInVertexVector, std::vector< TPObjRef > >, TPConverterBase< TileTrackMuFeatureContainer, TileTrackMuFeatureContainer_p3 >, TPConverterBase< TileMuFeatureContainer, TileMuFeatureContainer_p2 >, TPConverterBase< TileHitVector, TileHitVector_p1 >, TPConverterBase< std::vector< Trk::VxTrackAtVertex * >, std::vector< TPObjRef > >, TPConverterBase< std::vector< Trk::VxCandidate * >, std::vector< TPObjRef > >, TPConverterBase< std::vector< TrigMonTE >, std::vector< TrigMonTE_p1 > >, TPConverterBase< std::vector< TrigMonSeq >, std::vector< TrigMonSeq_p1 > >, TPConverterBase< std::vector< TrigMonRoi >, std::vector< TrigMonRoi_p1 > >, TPConverterBase< std::vector< TrigMonROBData >, std::vector< TrigMonROBData_p1 > >, TPConverterBase< std::vector< TrigMonROB >, std::vector< TrigMonROB_p1 > >, TPConverterBase< std::vector< TrigMonAlg >, std::vector< TrigMonAlg_p1 > >, TPConverterBase< std::vector< TrigConfSig >, std::vector< TrigConfSig_p1 > >, TPConverterBase< std::vector< TrigConfSeq >, std::vector< TrigConfSeq_p1 > >, TPConverterBase< std::vector< TrigConfChain >, std::vector< TrigConfChain_p1 > >, TPConverterBase< std::vector< TrigConfAlg >, std::vector< TrigConfAlg_p1 > >, TPConverterBase< std::vector< const Trk::TrackParameters * >, std::vector< TPObjRef > >, TPConverterBase< std::vector< const JetTagInfoBase * >, std::vector< TPObjRef > >, TPConverterBase< std::vector< const JetAssociationBase * >, std::vector< TPObjRef > >, TPConverterBase< std::vector< Analysis::TauShot * >, std::vector< TPObjRef > >, TPConverterBase< std::vector< Analysis::TauPi0Cluster * >, std::vector< TPObjRef > >, TPConverterBase< std::vector< Analysis::TauPi0Candidate * >, std::vector< TPObjRef > >, TPConverterBase< SkimDecisionCollection, SkimDecisionCollection_p1 >, TPConverterBase< RingerRingsContainer, RingerRingsContainer_p2 >, TPConverterBase< MuonFeatureDetailsContainer, MuonFeatureDetailsContainer_p2 >, TPConverterBase< MuonFeatureContainer, MuonFeatureContainer_p3 >, TPConverterBase< MultiComponentStateOnSurfaceDV, std::vector< TPObjRef > >, TPConverterBase< LumiBlockCollection, LumiBlockCollection_p2 >, TPConverterBase< LumiBlockCollection, LumiBlockCollection_p1 >, TPConverterBase< JetCollection, ParticleJetContainer_p1 >, TPConverterBase< IsoMuonFeatureContainer, IsoMuonFeatureContainer_p2 >, TPConverterBase< IsoMuonFeatureContainer, IsoMuonFeatureContainer_p3 >, TPConverterBase< EventBookkeeperCollection, EventBookkeeperCollection_p2 >, TPConverterBase< EventBookkeeperCollection, EventBookkeeperCollection_p1 >, TPConverterBase< ElectronMuonTopoInfoContainer, ElectronMuonTopoInfoContainer_p1 >, TPConverterBase< DataVector< eflowObject >, std::vector< eflowObject_p1 > >, TPConverterBase< DataVector< eflowObject >, std::vector< eflowObject_p5 > >, TPConverterBase< DataVector< eflowObject >, std::vector< eflowObject_p4 > >, TPConverterBase< DataVector< eflowObject >, std::vector< eflowObject_p3 > >, TPConverterBase< DataVector< eflowObject >, std::vector< eflowObject_p2 > >, TPConverterBase< DataVector< const Trk::MeasurementBase >, std::vector< TPObjRef > >, TPConverterBase< CombinedMuonFeatureContainer, CombinedMuonFeatureContainer_p2 >, TPConverterBase< CombinedMuonFeatureContainer, CombinedMuonFeatureContainer_p4 >, TPConverterBase< CombinedMuonFeatureContainer, CombinedMuonFeatureContainer_p3 >, TPConverterBase< Analysis::MuonContainer, MuonContainer_p6 >, TPConverterBase< Analysis::MuonContainer, MuonContainer_p5 >, TPConverterBase< Analysis::MuonContainer, MuonContainer_p4 >, and TPConverterBase< Analysis::MuonContainer, MuonContainer_p3 >.

Definition at line 505 of file TPConverter.h.

505  {
506  const TRANS* trans_der = dynamic_cast<const TRANS*>(trans);
507  if (!trans_der) std::abort();
508  return toPersistentWithKey_impl( trans_der, "", log);
509  }

◆ virt_toPersistentWithKey()

template<class TRANS_BASE , class TRANS , class PERS >
virtual TPObjRef TPAbstractPolyCnvBase< TRANS_BASE, TRANS, PERS >::virt_toPersistentWithKey ( const TRANS_BASE *  trans,
const std::string &  key,
MsgStream &  log 
)
inlinevirtualinherited

Internal interface method that is used to invoke the real conversion method (toPersistent_impl) in the derived converter.

Parameters
trans[IN] transient object
key[IN] SG key of the object being converted.
log[IN] output message stream
Returns
TPObjRef TP reference to the persistent representation stored in the storage vector of the top-level persistent object Here toPersistentWithKey_impl is invoked with the dynamic cast of the transient type pointer to it's actual type

Implements ITPConverterFor< TRANS_BASE >.

Reimplemented in TPConverterBase< Trk::TrackStates, std::vector< TPObjRef > >, TPConverterBase< TrigTrtHitCountsCollection, TrigTrtHitCountsCollection_p2 >, TPConverterBase< TrigTauTracksInfoCollection, TrigTauTracksInfoCollection_p2 >, TPConverterBase< TrigTauContainer, TrigTauContainer_p3 >, TPConverterBase< TrigTauClusterDetailsContainer, TrigTauClusterDetailsContainer_p2 >, TPConverterBase< TrigTauClusterContainer, TrigTauClusterContainer_p3 >, TPConverterBase< TrigTauClusterContainer, TrigTauClusterContainer_p4 >, TPConverterBase< TrigTauClusterContainer, TrigTauClusterContainer_p5 >, TPConverterBase< TrigT2MbtsBitsContainer, TrigT2MbtsBitsContainer_p3 >, TPConverterBase< TrigT2JetContainer, TrigT2JetContainer_p3 >, TPConverterBase< TrigSpacePointCountsCollection, TrigSpacePointCountsCollection_p4 >, TPConverterBase< TrigRoiDescriptorCollection, TrigRoiDescriptorCollection_p2 >, TPConverterBase< TrigRoiDescriptorCollection, TrigRoiDescriptorCollection_p3 >, TPConverterBase< TrigRNNOutputContainer, TrigRNNOutputContainer_p2 >, TPConverterBase< TrigPhotonContainer, TrigPhotonContainer_p3 >, TPConverterBase< TrigPassFlagsCollection, TrigPassFlagsCollection_p1 >, TPConverterBase< TrigPassBitsCollection, TrigPassBitsCollection_p1 >, TPConverterBase< TrigMuonEFIsolationContainer, TrigMuonEFIsolationContainer_p2 >, TPConverterBase< TrigMuonEFIsolationContainer, TrigMuonEFIsolationContainer_p1 >, TPConverterBase< TrigMuonEFContainer, TrigMuonEFContainer_p2 >, TPConverterBase< TrigMissingETContainer, TrigMissingETContainer_p3 >, TPConverterBase< TrigL2BjetContainer, TrigL2BjetContainer_p3 >, TPConverterBase< TrigInDetTrackCollection, std::vector< TPObjRef > >, TPConverterBase< TrigEMClusterContainer, TrigEMClusterContainer_p3 >, TPConverterBase< TrigEMClusterContainer, TrigEMClusterContainer_p4 >, TPConverterBase< TrigElectronContainer, TrigElectronContainer_p3 >, TPConverterBase< TrigCompositeContainer, TrigCompositeContainer_p1 >, TPConverterBase< TrigCaloClusterContainer, TrigCaloClusterContainer_p3 >, TPConverterBase< TRANS, PERS >, TPConverterBase< TrackInVertexVector, std::vector< TPObjRef > >, TPConverterBase< TileTrackMuFeatureContainer, TileTrackMuFeatureContainer_p3 >, TPConverterBase< TileMuFeatureContainer, TileMuFeatureContainer_p2 >, TPConverterBase< TileHitVector, TileHitVector_p1 >, TPConverterBase< std::vector< Trk::VxTrackAtVertex * >, std::vector< TPObjRef > >, TPConverterBase< std::vector< Trk::VxCandidate * >, std::vector< TPObjRef > >, TPConverterBase< std::vector< TrigMonTE >, std::vector< TrigMonTE_p1 > >, TPConverterBase< std::vector< TrigMonSeq >, std::vector< TrigMonSeq_p1 > >, TPConverterBase< std::vector< TrigMonRoi >, std::vector< TrigMonRoi_p1 > >, TPConverterBase< std::vector< TrigMonROBData >, std::vector< TrigMonROBData_p1 > >, TPConverterBase< std::vector< TrigMonROB >, std::vector< TrigMonROB_p1 > >, TPConverterBase< std::vector< TrigMonAlg >, std::vector< TrigMonAlg_p1 > >, TPConverterBase< std::vector< TrigConfSig >, std::vector< TrigConfSig_p1 > >, TPConverterBase< std::vector< TrigConfSeq >, std::vector< TrigConfSeq_p1 > >, TPConverterBase< std::vector< TrigConfChain >, std::vector< TrigConfChain_p1 > >, TPConverterBase< std::vector< TrigConfAlg >, std::vector< TrigConfAlg_p1 > >, TPConverterBase< std::vector< const Trk::TrackParameters * >, std::vector< TPObjRef > >, TPConverterBase< std::vector< const JetTagInfoBase * >, std::vector< TPObjRef > >, TPConverterBase< std::vector< const JetAssociationBase * >, std::vector< TPObjRef > >, TPConverterBase< std::vector< Analysis::TauShot * >, std::vector< TPObjRef > >, TPConverterBase< std::vector< Analysis::TauPi0Cluster * >, std::vector< TPObjRef > >, TPConverterBase< std::vector< Analysis::TauPi0Candidate * >, std::vector< TPObjRef > >, TPConverterBase< SkimDecisionCollection, SkimDecisionCollection_p1 >, TPConverterBase< RingerRingsContainer, RingerRingsContainer_p2 >, TPConverterBase< MuonFeatureDetailsContainer, MuonFeatureDetailsContainer_p2 >, TPConverterBase< MuonFeatureContainer, MuonFeatureContainer_p3 >, TPConverterBase< MultiComponentStateOnSurfaceDV, std::vector< TPObjRef > >, TPConverterBase< LumiBlockCollection, LumiBlockCollection_p2 >, TPConverterBase< LumiBlockCollection, LumiBlockCollection_p1 >, TPConverterBase< JetCollection, ParticleJetContainer_p1 >, TPConverterBase< IsoMuonFeatureContainer, IsoMuonFeatureContainer_p2 >, TPConverterBase< IsoMuonFeatureContainer, IsoMuonFeatureContainer_p3 >, TPConverterBase< EventBookkeeperCollection, EventBookkeeperCollection_p2 >, TPConverterBase< EventBookkeeperCollection, EventBookkeeperCollection_p1 >, TPConverterBase< ElectronMuonTopoInfoContainer, ElectronMuonTopoInfoContainer_p1 >, TPConverterBase< DataVector< eflowObject >, std::vector< eflowObject_p1 > >, TPConverterBase< DataVector< eflowObject >, std::vector< eflowObject_p5 > >, TPConverterBase< DataVector< eflowObject >, std::vector< eflowObject_p4 > >, TPConverterBase< DataVector< eflowObject >, std::vector< eflowObject_p3 > >, TPConverterBase< DataVector< eflowObject >, std::vector< eflowObject_p2 > >, TPConverterBase< DataVector< const Trk::MeasurementBase >, std::vector< TPObjRef > >, TPConverterBase< CombinedMuonFeatureContainer, CombinedMuonFeatureContainer_p2 >, TPConverterBase< CombinedMuonFeatureContainer, CombinedMuonFeatureContainer_p4 >, TPConverterBase< CombinedMuonFeatureContainer, CombinedMuonFeatureContainer_p3 >, TPConverterBase< Analysis::MuonContainer, MuonContainer_p6 >, TPConverterBase< Analysis::MuonContainer, MuonContainer_p5 >, TPConverterBase< Analysis::MuonContainer, MuonContainer_p4 >, and TPConverterBase< Analysis::MuonContainer, MuonContainer_p3 >.

Definition at line 515 of file TPConverter.h.

518  {
519  const TRANS* trans_der = dynamic_cast<const TRANS*>(trans);
520  if (!trans_der) std::abort();
521  return toPersistentWithKey_impl( trans_der, key, log);
522  }

◆ wasUsedForReading()

bool ITPConverterFor< TRANS_BASE >::wasUsedForReading ( )
inlineinherited

Definition at line 236 of file TPConverter.h.

236 { return m_wasUsedForReading; }

Member Data Documentation

◆ m_curRecLevel

template<class TRANS_BASE , class TRANS , class PERS >
int TPAbstractPolyCnvBase< TRANS_BASE, TRANS, PERS >::m_curRecLevel
protectedinherited

count recursive invocations, to detect recursion

Definition at line 582 of file TPConverter.h.

◆ m_errorMxCnv

ErrorMatrixCnv_p1 PixelClusterCnv_p3::m_errorMxCnv
protected

Definition at line 46 of file PixelClusterCnv_p3.h.

◆ m_ignoreRecursion

template<class TRANS_BASE , class TRANS , class PERS >
bool TPAbstractPolyCnvBase< TRANS_BASE, TRANS, PERS >::m_ignoreRecursion
protectedinherited

if true, do not throw errors in case of recursion.

Definition at line 588 of file TPConverter.h.

◆ m_localPosCnv

LocalPositionCnv_p1 PixelClusterCnv_p3::m_localPosCnv
protected

Definition at line 45 of file PixelClusterCnv_p3.h.

◆ m_pixId2

const PixelID* PixelClusterCnv_p3::m_pixId2
protected

Definition at line 47 of file PixelClusterCnv_p3.h.

◆ m_pStorage

template<class TRANS_BASE , class TRANS , class PERS >
std::vector< PERS >* TPAbstractPolyCnvBase< TRANS_BASE, TRANS, PERS >::m_pStorage
protectedinherited

the address of the storage vector for persistent representations

Definition at line 579 of file TPConverter.h.

◆ m_pStorageTID

TPObjRef::typeID_t ITPConverterFor< TRANS_BASE >::m_pStorageTID
protectedinherited

TP Ref typeID for the persistent objects this converter is creating.

Definition at line 292 of file TPConverter.h.

◆ m_pStorageTIDvalue

unsigned ITPConverterFor< TRANS_BASE >::m_pStorageTIDvalue
protectedinherited

m_pStorageTID converted to integer value

Definition at line 295 of file TPConverter.h.

◆ m_recursive

template<class TRANS_BASE , class TRANS , class PERS >
bool TPAbstractPolyCnvBase< TRANS_BASE, TRANS, PERS >::m_recursive
protectedinherited

if true, work in recursion-safe way (slower)

Definition at line 585 of file TPConverter.h.

◆ m_swCnv

InDet::SiWidthCnv_p2 PixelClusterCnv_p3::m_swCnv
protected

Definition at line 44 of file PixelClusterCnv_p3.h.

◆ m_topConverter

TopLevelTPCnvBase* ITPConverterFor< TRANS_BASE >::m_topConverter
protectedinherited

top level converter that owns this elemental TP converter it also holds the storage object

Definition at line 299 of file TPConverter.h.

◆ m_topConverterRuntime

TopLevelTPCnvBase* ITPConverterFor< TRANS_BASE >::m_topConverterRuntime
protectedinherited

top level converter "owning" this TP converter at runtime (different from m_topConverter in case the top-level converter and object have extensions)

Definition at line 302 of file TPConverter.h.

◆ m_wasUsedForReading

bool ITPConverterFor< TRANS_BASE >::m_wasUsedForReading
protectedinherited

flag set when using this converter for reading triggers search for a new converter before writing, to prevent possible use of old version

Definition at line 306 of file TPConverter.h.


The documentation for this class was generated from the following files:
xAOD::iterator
JetConstituentVector::iterator iterator
Definition: JetConstituentVector.cxx:68
Identifier::value_type
IDENTIFIER_TYPE value_type
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:39
ITPConverter::typeID
virtual const TPObjRef::typeID_t & typeID() const =0
Return TP typeID for persistent objects produced by this converter.
PixelClusterCnv_p3::m_pixId2
const PixelID * m_pixId2
Definition: PixelClusterCnv_p3.h:47
TopLevelTPCnvBase::converterForType
ITPConverter * converterForType(const std::type_info &info) const
Find and return a TP converter for a given C++ type info.
Definition: TopLevelTPCnvBase.h:80
TPAbstractPolyCnvBase::m_pStorage
std::vector< PERS > * m_pStorage
the address of the storage vector for persistent representations
Definition: TPConverter.h:579
InDet::SiWidthCnv_p2::transToPers
void transToPers(const InDet::SiWidth *, InDet::SiWidth_p2 *, MsgStream &)
Definition: SiWidthCnv_p2.cxx:27
InDet::PixelCluster::isAmbiguous
bool isAmbiguous() const
Definition: InnerDetector/InDetRecEvent/InDetPrepRawData/InDetPrepRawData/PixelCluster.h:236
Amg::MatrixX
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > MatrixX
Dynamic Matrix - dynamic allocation.
Definition: EventPrimitives.h:29
InDet::PixelCluster::omegay
float omegay() const
Definition: InnerDetector/InDetRecEvent/InDetPrepRawData/InDetPrepRawData/PixelCluster.h:197
ITPConverterFor< TRANS_BASE >::m_topConverter
TopLevelTPCnvBase * m_topConverter
top level converter that owns this elemental TP converter it also holds the storage object
Definition: TPConverter.h:299
Trk::locX
@ locX
Definition: ParamDefs.h:43
Trk::locY
@ locY
local cartesian
Definition: ParamDefs.h:44
TPAbstractPolyCnvBase::toPersistentWithKey_impl
TPObjRef toPersistentWithKey_impl(const TRANS *trans, const std::string &key, MsgStream &log)
Convert transient object to persistent representation.
CaloCellPos2Ntuple.int
int
Definition: CaloCellPos2Ntuple.py:24
TPObjRef::typeID_t::value
unsigned value() const
Returns the type ID as an integer.
Definition: TPObjRef.h:46
Amg::Vector2D
Eigen::Matrix< double, 2, 1 > Vector2D
Definition: GeoPrimitives.h:48
index
Definition: index.py:1
TPPolyCnvBase::createTransient
virtual TRANS * createTransient(const PERS *persObj, MsgStream &log)
Create transient representation of a persistent object.
Trk::PrepRawData::localCovariance
const Amg::MatrixX & localCovariance() const
return const ref to the error matrix
skel.it
it
Definition: skel.GENtoEVGEN.py:423
InDet::PixelCluster_p3::m_rdoList
std::vector< rdo_diff_type > m_rdoList
Definition: PixelCluster_p3.h:29
Trk::PrepRawData::rdoList
const std::vector< Identifier > & rdoList() const
return the List of rdo identifiers (pointers)
TopLevelTPCnvBase::converterForRef
ITPConverter * converterForRef(const TPObjRef &ref) const
Find and return a TP converter for persistent type referenced by ref.
Definition: TopLevelTPCnvBase.h:89
InDet::PixelCluster_p3::m_clusId
unsigned int m_clusId
Definition: PixelCluster_p3.h:28
TPPolyCnvBase::createTransientWithKey
virtual TRANS * createTransientWithKey(const PERS *persObj, const std::string &key, MsgStream &log)
Create transient representation of a persistent object, with SG key.
InDet::PixelCluster_p3::m_mat01
float m_mat01
Definition: PixelCluster_p3.h:33
PixelID::calc_offset
Identifier::diff_type calc_offset(const Identifier &base, const Identifier &target) const
Calculate a channel offset between the two identifiers.
Definition: PixelID.h:564
PixelClusterCnv_p3::createPixelCluster
InDet::PixelCluster createPixelCluster(const InDet::PixelCluster_p3 *persObj, const Identifier &waferId, const InDetDD::SiDetectorElement *delEl, MsgStream &log)
Definition: PixelClusterCnv_p3.cxx:29
InDet::PixelCluster_p3::m_mat00
float m_mat00
Definition: PixelCluster_p3.h:32
TPAbstractPolyCnvBase::m_ignoreRecursion
bool m_ignoreRecursion
if true, do not throw errors in case of recursion.
Definition: TPConverter.h:588
ITPConverterFor< TRANS_BASE >::topConverter
virtual TopLevelTPCnvBase * topConverter()
return the top-level converter for this elemental TP converter
Definition: TPConverter.h:191
TPObjRef
Definition: TPObjRef.h:20
PixelID::wafer_id
Identifier wafer_id(int barrel_ec, int layer_disk, int phi_module, int eta_module) const
For a single crystal.
Definition: PixelID.h:364
PixelID::base_bit
int base_bit(void) const
Return the lowest bit position used in the channel id.
Definition: PixelID.h:580
InDet::PixelCluster_p3::m_width
InDet::SiWidth_p2 m_width
Definition: PixelCluster_p3.h:41
TPAbstractPolyCnvBase::transToPers
virtual void transToPers(const TRANS *transObj, PERS *persObj, MsgStream &log)=0
Convert transient representation to persistent one.
ITPConverterFor< TRANS_BASE >::m_wasUsedForReading
bool m_wasUsedForReading
flag set when using this converter for reading triggers search for a new converter before writing,...
Definition: TPConverter.h:306
InDet::PixelCluster::isFake
bool isFake() const
Definition: InnerDetector/InDetRecEvent/InDetPrepRawData/InDetPrepRawData/PixelCluster.h:228
python.setupRTTAlg.size
int size
Definition: setupRTTAlg.py:39
ITPConverterFor< TRANS_BASE >::converterForType
CNV * converterForType(CNV *cnv, const std::type_info &t_info, MsgStream &log) const
Find converter for a given C++ type ID, that is or ihnerits from CNV type.
Definition: TPConverter.h:58
PixelClusterCnv_p3::m_swCnv
InDet::SiWidthCnv_p2 m_swCnv
Definition: PixelClusterCnv_p3.h:44
InDet::PixelCluster_p3::m_localPosY
float m_localPosY
Definition: PixelCluster_p3.h:31
PixelID::pixel_id_offset
Identifier pixel_id_offset(const Identifier &base, Identifier::diff_type offset) const
Create an identifier with a given base and channel offset.
Definition: PixelID.h:572
Identifier
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:32
ITPConverterFor< TRANS_BASE >::m_pStorageTID
TPObjRef::typeID_t m_pStorageTID
TP Ref typeID for the persistent objects this converter is creating.
Definition: TPConverter.h:292
endmsg
#define endmsg
Definition: AnalysisConfig_Ntuple.cxx:63
InDet::PixelCluster::totalToT
int totalToT() const
Definition: InnerDetector/InDetRecEvent/InDetPrepRawData/InDetPrepRawData/PixelCluster.h:205
master.flag
bool flag
Definition: master.py:29
TPAbstractPolyCnvBase::persToTransWithKey
virtual void persToTransWithKey(const PERS *persObj, TRANS *transObj, const std::string &, MsgStream &log)
Convert persistent representation to transient one.
Definition: TPConverter.h:376
InDet::PixelCluster::LVL1A
int LVL1A() const
Definition: InnerDetector/InDetRecEvent/InDetPrepRawData/InDetPrepRawData/PixelCluster.h:269
InDet::PixelCluster_p3::m_properties
unsigned int m_properties
Definition: PixelCluster_p3.h:37
ITPConverterFor< TRANS_BASE >::m_topConverterRuntime
TopLevelTPCnvBase * m_topConverterRuntime
top level converter "owning" this TP converter at runtime (different from m_topConverter in case the ...
Definition: TPConverter.h:302
InDet::PixelCluster_p3::m_mat11
float m_mat11
Definition: PixelCluster_p3.h:34
ITPConverterFor< TRANS_BASE >::converterForRef
CNV * converterForRef(CNV *cnv, const TPObjRef &ref, MsgStream &log) const
Find converter for a TP type ID (passed in a TP Ref), that is or ihnerits from CNV type.
Definition: TPConverter.h:74
Trk::PrepRawData::identify
Identifier identify() const
return the identifier
InDet::SiCluster::gangedPixel
bool gangedPixel() const
return the flag of this cluster containing a gangedPixel
PERS
RpcSectorLogicContainer_p1 PERS
Definition: RpcSectorLogicContainerCnv.h:13
Trk::PrepRawData::localPosition
const Amg::Vector2D & localPosition() const
return the local position reference
RpcSectorLogicContainer_p1
Class to represent.
Definition: RpcSectorLogicContainer_p1.h:19
InDet::PixelCluster_p3::m_omegax
float m_omegax
Definition: PixelCluster_p3.h:35
InDet::PixelCluster_p3::m_splitInfo
int m_splitInfo
Definition: PixelCluster_p3.h:38
TPAbstractPolyCnvBase::transToPersWithKey
virtual void transToPersWithKey(const TRANS *transObj, PERS *persObj, const std::string &, MsgStream &log)
Convert transient representation to persistent one.
Definition: TPConverter.h:392
ITPConverterFor< TRANS_BASE >::initPrivateConverters
virtual void initPrivateConverters(TopLevelTPCnvBase *)
Definition: TPConverter.h:187
TPAbstractPolyCnvBase::m_recursive
bool m_recursive
if true, work in recursion-safe way (slower)
Definition: TPConverter.h:585
InDet::PixelCluster
Definition: InnerDetector/InDetRecEvent/InDetPrepRawData/InDetPrepRawData/PixelCluster.h:49
InDet::SiCluster::width
const InDet::SiWidth & width() const
return width class reference
ITPConverterFor< TRANS_BASE >::m_pStorageTIDvalue
unsigned m_pStorageTIDvalue
m_pStorageTID converted to integer value
Definition: TPConverter.h:295
Identifier::get_compact
value_type get_compact(void) const
Get the compact id.
Base_Fragment.width
width
Definition: Sherpa_i/share/common/Base_Fragment.py:59
InDet::PixelCluster::omegax
float omegax() const
Definition: InnerDetector/InDetRecEvent/InDetPrepRawData/InDetPrepRawData/PixelCluster.h:193
ref
const boost::regex ref(r_ef)
TPAbstractPolyCnvBase::persToTrans
virtual void persToTrans(const PERS *persObj, TRANS *transObj, MsgStream &log)=0
Convert persistent representation to transient one.
InDet::PixelCluster::totalCharge
float totalCharge() const
Definition: InnerDetector/InDetRecEvent/InDetPrepRawData/InDetPrepRawData/PixelCluster.h:213
python.CaloCondTools.log
log
Definition: CaloCondTools.py:20
InDet::PixelCluster_p3::m_chargeList
std::vector< float > m_chargeList
Definition: PixelCluster_p3.h:39
InDet::SiWidth
Definition: SiWidth.h:25
ReadCalibFromCool.typeName
typeName
Definition: ReadCalibFromCool.py:477
InDet::SiWidthCnv_p2::persToTrans
void persToTrans(const InDet::SiWidth_p2 *, InDet::SiWidth *, MsgStream &)
Definition: SiWidthCnv_p2.cxx:15
InDet::PixelCluster_p3::rdo_diff_type
int rdo_diff_type
Definition: PixelCluster_p3.h:22
ITPConverter
Definition: TPTools/TPTools/ITPConverter.h:32
ITPConverter::converterNotFound
virtual void converterNotFound(const std::type_info &converterType, ITPConverter *c, const std::string &typeName, MsgStream &log) const
method called when the right TP converter was not found during writing
Definition: ITPConverter.cxx:22
TPObjRef::typeID
unsigned typeID() const
returns the type ID (as integer) of the referenced object
Definition: TPObjRef.h:71
InDet::PixelCluster_p3::m_omegay
float m_omegay
Definition: PixelCluster_p3.h:36
python.compressB64.c
def c
Definition: compressB64.py:93
readCCLHist.float
float
Definition: readCCLHist.py:83
InDet::PixelCluster_p3::m_localPosX
float m_localPosX
Definition: PixelCluster_p3.h:30
PixelID::pixel_id_from_shortened
Identifier pixel_id_from_shortened(Identifier32::value_type val) const
Create a compact pixel id from a (fixed format) legacy pixel channel id.
Definition: PixelID.h:546
TPAbstractPolyCnvBase::m_curRecLevel
int m_curRecLevel
count recursive invocations, to detect recursion
Definition: TPConverter.h:582
InDet::PixelCluster::splitInfoRaw
int splitInfoRaw() const
Definition: InnerDetector/InDetRecEvent/InDetPrepRawData/InDetPrepRawData/PixelCluster.h:260
InDet::PixelCluster::chargeList
const std::vector< float > & chargeList() const
Definition: InnerDetector/InDetRecEvent/InDetPrepRawData/InDetPrepRawData/PixelCluster.h:209
mapkey::key
key
Definition: TElectronEfficiencyCorrectionTool.cxx:37