|
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef XAODROOTACCESS_TOOLS_TAUXVECTORFACTORY_H
6 #define XAODROOTACCESS_TOOLS_TAUXVECTORFACTORY_H
15 class TVirtualCollectionProxy;
45 virtual std::unique_ptr< SG::IAuxTypeVector >
47 bool isLinked )
const override;
50 virtual std::unique_ptr< SG::IAuxTypeVector >
55 bool isLinked )
const override;
62 size_t n)
const override;
69 size_t n )
const override;
75 size_t n )
const override;
78 void clear(
void* dst,
size_t dst_index,
size_t n )
const;
82 size_t n )
const override;
88 virtual const std::type_info*
tiVec()
const override;
91 virtual bool isDynamic()
const override {
return true; }
98 virtual const std::type_info*
tiAlloc()
const override;
123 #endif // XAODROOTACCESS_TOOLS_TAUXVECTORFACTORY_H
Helper for thread-safe TMethodCall. Extracted from Type.
virtual void copy(SG::auxid_t auxid, SG::AuxVectorData &dst, size_t dst_index, const SG::AuxVectorData &src, size_t src_index, size_t n) const override
Copy elements from one location to another.
char data[hepevt_bytes_allocation_ATLAS]
virtual const std::type_info * tiVec() const override
Type info of the vector type handled by the factory object.
virtual void swap(SG::auxid_t auxid, SG::AuxVectorData &a, size_t aindex, SG::AuxVectorData &b, size_t bindex, size_t n) const override
Swap the payload of two ranges of elements in memory.
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
void clear(void *dst, size_t dst_index, size_t n) const
Clear the payload of a given range inside a vector.
virtual ~TAuxVectorFactory()
Destructor.
virtual const std::type_info * tiAlloc() const override
Return the type_info of the vector allocator.
TAuxVectorFactory(const TAuxVectorFactory &)=delete
void * m_defElt
Pointer to a default element object in memory.
virtual std::unique_ptr< SG::IAuxTypeVector > create(SG::auxid_t auxid, size_t size, size_t capacity, bool isLinked) const override
Create a new vector in memory with the requested size and capacity.
Helper for making a thread-safe function call.
size_t auxid_t
Identifier for a particular aux data item.
Interface for factory objects that create vectors.
virtual bool isDynamic() const override
Type of the factory.
virtual std::string tiAllocName() const override
Return the (demangled) name of the vector allocator.
RootUtils::TSMethodCall m_assign ATLAS_THREAD_SAFE
Assignment operator.
virtual void copyForOutput(SG::auxid_t auxid, SG::AuxVectorData &dst, size_t dst_index, const SG::AuxVectorData &src, size_t src_index, size_t n) const override
Copy one element from one location to another.
Auxiliary vector factory based on a ROOT dictionary.
TAuxVectorFactory & operator=(const TAuxVectorFactory &)=delete
::TVirtualCollectionProxy * m_proxy
ROOT's description of the vector type.
virtual size_t getEltSize() const override
Size of the elements inside the vector type.
Interface for factory objects that create vectors.
Abstract interface for manipulating vectors of arbitrary types.
::TClass * m_class
The type that this factory operates on.
virtual std::unique_ptr< SG::IAuxTypeVector > createFromData(SG::auxid_t auxid, void *data, SG::IAuxTypeVector *linkedVector, bool isPacked, bool ownFlag, bool isLinked) const override
Create a vector object of this type from a data blob.
Manage lookup of vectors of auxiliary data.
Define macros for attributes used to control the static checker.
TAuxVectorFactory(::TClass *cl)
Constructor, setting up the object based on a dictionary.
cl
print [x.__class__ for x in toList(dqregion.getSubRegions()) ]