ATLAS Offline Software
TCDVHolderT.h
Go to the documentation of this file.
1 // Dear emacs, this is -*- c++ -*-
2 
3 /*
4  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 #ifndef XAODROOTACCESS_TOOL_TCDVHOLDERT_H
8 #define XAODROOTACCESS_TOOL_TCDVHOLDERT_H
9 
10 // EDM include(s):
12 
13 // Local include(s):
15 
16 namespace xAOD {
17 
27  template< class T >
28  class TCDVHolderT : public THolder {
29 
30  public:
33 
35  TCDVHolderT( ConstDataVector< T >* object, const std::type_info& type,
36  ::Bool_t owner = kTRUE );
37 
39  virtual void set( void* obj );
40 
42  virtual void* getAs( const std::type_info& tid,
43  ::Bool_t silent = kFALSE ) const;
44 
46  virtual const void* getAsConst( const std::type_info& tid,
47  ::Bool_t silent = kFALSE ) const;
48 
49  private:
55 
56  }; // class TCDVHolderT
57 
58 } // namespace xAOD
59 
60 // Include the implementation:
62 
63 #endif // XAODROOTACCESS_TOOL_TCDVHOLDERT_H
xAOD::TCDVHolderT::getAsConst
virtual const void * getAsConst(const std::type_info &tid, ::Bool_t silent=kFALSE) const
Return the object as a specific, constant pointer.
ConstDataVector.h
DataVector adapter that acts like it holds const pointers.
xAOD::THolder
This class takes care of holding EDM objects in memory.
Definition: THolder.h:35
xAOD::TCDVHolderT::m_cdvObject
ConstDataVector< T > * m_cdvObject
Type specific pointer to the managed object.
Definition: TCDVHolderT.h:51
xAOD
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Definition: ICaloAffectedTool.h:24
xAOD::TCDVHolderT::m_holderHelper
THolder m_holderHelper
Helper object managing the inheritance tree of the underlying DataVector type.
Definition: TCDVHolderT.h:54
TCDVHolderT.icc
xAOD::TCDVHolderT::TCDVHolderT
TCDVHolderT(ConstDataVector< T > *object, const std::type_info &type, ::Bool_t owner=kTRUE)
Constructor with the object, and its type.
xAOD::TCDVHolderT
Class managing ConstDataVector objects in transient memory.
Definition: TCDVHolderT.h:28
xAOD::TCDVHolderT::set
virtual void set(void *obj)
Replace the managed object.
python.trfDecorators.silent
def silent(func)
Redirect stdout/err to /dev/null Useful wrapper to get rid of ROOT verbosity...
Definition: trfDecorators.py:24
ConstDataVector< T >
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
THolder.h
python.PyAthena.obj
obj
Definition: PyAthena.py:132
xAOD::TCDVHolderT::Object_t
ConstDataVector< T > Object_t
Type of the managed object.
Definition: TCDVHolderT.h:32
xAOD::TCDVHolderT::getAs
virtual void * getAs(const std::type_info &tid, ::Bool_t silent=kFALSE) const
Return the object as a specific pointer.