![]() |
ATLAS Offline Software
|
#include <Holder.h>
Public Member Functions | |
| IHolder () | |
| IHolder (const std::string &prefix, const std::string &label, uint16_t idx) | |
| virtual | ~IHolder () |
| virtual IHolder * | clone (const std::string &prefix, const std::string &label, uint16_t idx) const =0 |
| virtual void | prepare (const asg::AsgMessaging &logger, HLT::AccessProxy *sg, IConversionSvc *objSerializer, bool readonly) |
| prepares this holder by setting messaging, StoreGate access and providing serializer | |
| virtual bool | syncWithSG (SG::OwnershipPolicy policy=SG::OWN_ELEMENTS)=0 |
| virtual CLID | typeClid () const =0 |
| returns the CLID of objects stores by this holder | |
| virtual CLID | containerClid () const =0 |
| virtual CLID | auxClidOrZero () const =0 |
| const std::string & | label () const |
| returns the label of objects stores by this holder | |
| virtual const std::string & | prefix () const |
| returns the containers StoreGate prefix | |
| virtual const std::string & | key () const =0 |
| returns the containers StoreGate key | |
| virtual const std::string & | typeName () const =0 |
| returns the object's name stored by this holder | |
| virtual const std::string & | collectionName () const =0 |
| returns the collection's name stored by this holder | |
| uint16_t | subTypeIndex () const |
| returns the index (short number used when linking object to the TE) of objects stores by this holder | |
| std::string | generateAliasKey (CLID c, uint16_t sti, const std::string &label, unsigned size) |
| virtual bool | serialize (std::vector< uint32_t > &output) const |
| serializes this Holder | |
| bool | serializeWithPayload (const xAOD::AuxSelection &sel, std::vector< uint32_t > &output, size_t &payloadsize) |
| serializes this Holder including payload | |
| bool | serializePayload (std::vector< uint32_t > &dataBlob, const xAOD::AuxSelection &sel) |
| serializes the payload of this Holder | |
| virtual void | print (MsgStream &m) const |
| bool | deserializePayload (const std::vector< uint32_t > &dataBlob, int version) |
| deserialization of holder payload | |
| virtual DataObject * | getDataObject ()=0 |
| virtual DataObject * | getAuxDataObject ()=0 |
| virtual bool | setDataObject (DataObject *dobj)=0 |
| virtual bool | setAuxDataObject (DataObject *dobjaux)=0 |
| virtual const ITypeProxy & | containerTypeProxy () const =0 |
| Get the proxy for the container. | |
| virtual bool | checkAndSetOwnership (SG::OwnershipPolicy policy)=0 |
| virtual std::string | getUniqueKey ()=0 |
| virtual std::string | getNextKey ()=0 |
Static Public Member Functions | |
| static bool | enquireSerialized (std::vector< uint32_t >::const_iterator &fromHere, const std::vector< uint32_t >::const_iterator &end, class_id_type &c, std::string &label, sub_index_type &subtypeIndex) |
Protected Member Functions | |
| MsgStream & | msg () const |
| MsgStream & | msg (const MSG::Level lvl) const |
| bool | msgLvl (const MSG::Level lvl) const |
Protected Attributes | |
| const asg::AsgMessaging * | m_logger {0} |
| IConversionSvc * | m_objectserializerSvc {0} |
| pointer to object serializer | |
| HLT::AccessProxy * | m_storeGate {0} |
| pointer to SG | |
| bool | m_readonly {false} |
| ITypeProxy * | m_aux {0} |
Private Member Functions | |
| bool | serializeDynVars (const SG::IAuxStoreIO &iio, const xAOD::AuxSelection &sel, std::vector< uint32_t > &dataBlob) |
| Serialize all selected dynamic variables for an xAOD object. | |
| bool | deserializeDynVars (const std::vector< uint32_t > &dataBlob, size_t offs, SG::IAuxStore &store) |
| Read dynamic auxiliary variables from a serialized buffer. | |
| std::unique_ptr< SG::IAuxStore > | deserializeDynVars (const std::vector< uint32_t > &dataBlob, size_t offs) |
| Read dynamic auxiliary variables from a serialized buffer. | |
| const std::type_info * | getElementType (const std::string &tname, std::string &elementTypeName) const |
| Find the type of an element of a vector. | |
Private Attributes | |
| std::string | m_prefix |
| prefix for key given to the objects | |
| std::string | m_label |
| label given to the objects in this holder (labels given at attachFeature) | |
| uint16_t | m_subTypeIndex {0} |
| index to notify how many objects of given type we have (we need to record it in case of slimming will be done latter) | |
| int | m_uniqueCounter {0} |
| ToolHandle< ITrigSerializerToolBase > | m_serializer |
| Serializer tool; used for dynamic variables. | |
| IHolder::IHolder | ( | ) |
Definition at line 38 of file Holder.cxx.
| IHolder::IHolder | ( | const std::string & | prefix, |
| const std::string & | label, | ||
| uint16_t | idx ) |
Definition at line 42 of file Holder.cxx.
|
virtual |
Definition at line 51 of file Holder.cxx.
|
pure virtual |
Implemented in HLTNavDetails::HolderImp< STORED, CONTAINER >, and HolderImp< STORED, CONTAINER >.
|
pure virtual |
Implemented in HLTNavDetails::HolderImp< STORED, CONTAINER >, and HolderImp< STORED, CONTAINER >.
|
pure virtual |
Implemented in HLTNavDetails::HolderImp< STORED, CONTAINER >, and HolderImp< STORED, CONTAINER >.
|
pure virtual |
returns the collection's name stored by this holder
Implemented in HLTNavDetails::HolderImp< STORED, CONTAINER >, and HolderImp< STORED, CONTAINER >.
|
pure virtual |
Implemented in HLTNavDetails::HolderImp< STORED, CONTAINER >, and HolderImp< STORED, CONTAINER >.
|
pure virtual |
Get the proxy for the container.
Implemented in HLTNavDetails::HolderImp< STORED, CONTAINER >, and HolderImp< STORED, CONTAINER >.
|
private |
Read dynamic auxiliary variables from a serialized buffer.
| dataBlob | Serialized data. |
| offs | Offset in dataBlob where dynamic variables start. |
| sz | Number of elements in the xAOD container. |
dataBlob should be formatted as described in the documentation for serializeDynVars starting at offs. Returns a new dynamic store.
Definition at line 452 of file Holder.cxx.
|
private |
Read dynamic auxiliary variables from a serialized buffer.
| dataBlob | Serialized data. | |
| offs | Offset in dataBlob where dynamic variables start. | |
| [out] | store | Auxiliary store for the object being read. |
dataBlob should be formatted as described in the documentation for serializeDynVars starting at offs. store should be convertable to IAuxStoreHolder. A new dynamic store will be created and registered with store via setStore.
Returns true on success, false on failure.
Definition at line 405 of file Holder.cxx.
| bool HLTNavDetails::IHolder::deserializePayload | ( | const std::vector< uint32_t > & | dataBlob, |
| int | version ) |
deserialization of holder payload
Definition at line 148 of file Holder.cxx.
|
staticinherited |
Definition at line 12 of file BaseHolder.cxx.
| std::string IHolder::generateAliasKey | ( | CLID | c, |
| uint16_t | sti, | ||
| const std::string & | label, | ||
| unsigned | size ) |
Definition at line 98 of file Holder.cxx.
|
pure virtual |
Implemented in HLTNavDetails::HolderImp< STORED, CONTAINER >, and HolderImp< STORED, CONTAINER >.
|
pure virtual |
Implemented in HLTNavDetails::HolderImp< STORED, CONTAINER >, and HolderImp< STORED, CONTAINER >.
|
private |
Find the type of an element of a vector.
| tname | The name of the type to analyze. |
| [out[ | elementTypeName The name of the type of an element of the vector. |
Returns the type_info for an element of the vector.
| tname_in | The name of the type to analyze. | |
| [out] | elementTypeName | The name of the type of an element of the vector. |
Returns the type_info for an element of the vector.
Definition at line 544 of file Holder.cxx.
|
pure virtual |
Implemented in HLTNavDetails::HolderImp< STORED, CONTAINER >, and HolderImp< STORED, CONTAINER >.
|
pure virtual |
Implemented in HLTNavDetails::HolderImp< STORED, CONTAINER >, and HolderImp< STORED, CONTAINER >.
|
pure virtual |
returns the containers StoreGate key
Implemented in HLTNavDetails::HolderImp< STORED, CONTAINER >, and HolderImp< STORED, CONTAINER >.
|
inlinevirtual |
returns the label of objects stores by this holder
Implements HLT::BaseHolder.
Definition at line 85 of file Holder.h.
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlinevirtual |
|
virtual |
prepares this holder by setting messaging, StoreGate access and providing serializer
Reimplemented in HLTNavDetails::HolderImp< STORED, CONTAINER >, and HolderImp< STORED, CONTAINER >.
Definition at line 55 of file Holder.cxx.
|
virtual |
Reimplemented in HLTNavDetails::HolderImp< STORED, CONTAINER >, and HolderImp< STORED, CONTAINER >.
Definition at line 107 of file Holder.cxx.
|
virtual |
serializes this Holder
Reimplemented from HLT::BaseHolder.
Reimplemented in HLTNavDetails::HolderImp< STORED, CONTAINER >, and HolderImp< STORED, CONTAINER >.
Definition at line 62 of file Holder.cxx.
|
private |
Serialize all selected dynamic variables for an xAOD object.
| iio | The auxiliary store for the xAOD object. | |
| sel | Selection object for variables to write. | |
| [out] | dataBlob | Serialized data. |
Returns true on success, false on failure.
Each selected dynamic variable is concatenated to dataBlob as follows.
Definition at line 345 of file Holder.cxx.
| bool HLTNavDetails::IHolder::serializePayload | ( | std::vector< uint32_t > & | dataBlob, |
| const xAOD::AuxSelection & | sel ) |
serializes the payload of this Holder
Definition at line 254 of file Holder.cxx.
| bool IHolder::serializeWithPayload | ( | const xAOD::AuxSelection & | sel, |
| std::vector< uint32_t > & | output, | ||
| size_t & | payloadsize ) |
serializes this Holder including payload
Definition at line 79 of file Holder.cxx.
|
pure virtual |
Implemented in HLTNavDetails::HolderImp< STORED, CONTAINER >, and HolderImp< STORED, CONTAINER >.
|
pure virtual |
Implemented in HLTNavDetails::HolderImp< STORED, CONTAINER >, and HolderImp< STORED, CONTAINER >.
|
inlinevirtual |
returns the index (short number used when linking object to the TE) of objects stores by this holder
Implements HLT::BaseHolder.
Definition at line 111 of file Holder.h.
|
pure virtual |
Implemented in HLTNavDetails::HolderImp< STORED, CONTAINER >, and HolderImp< STORED, CONTAINER >.
|
pure virtual |
returns the CLID of objects stores by this holder
Implements HLT::BaseHolder.
Implemented in HLTNavDetails::HolderImp< STORED, CONTAINER >, and HolderImp< STORED, CONTAINER >.
|
pure virtual |
returns the object's name stored by this holder
Implemented in HLTNavDetails::HolderImp< STORED, CONTAINER >, and HolderImp< STORED, CONTAINER >.
|
protected |
|
private |
|
protected |
|
protected |
|
private |
|
protected |
|
private |
|
protected |
|
private |
|
private |