ATLAS Offline Software
CaloIDHelper_IDDetDescrCnv.h
Go to the documentation of this file.
1 // This file's extension implies that it's C, but it's really -*- C++ -*-.
2 
3 /*
4  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 // $Id$
33 #ifndef CALOIDCNV_CALOIDHELPER_IDDETDESCRCNV_H
34 #define CALOIDCNV_CALOIDHELPER_IDDETDESCRCNV_H
35 
36 
38 
39 
40 class IdHelper;
41 
42 
43 namespace CaloIdCnv {
44 
45 
56  : public DetDescrConverter
57 {
58 public:
64  virtual StatusCode createObj(IOpaqueAddress* pAddr, DataObject*& pObj);
65 
66 
70  virtual long int repSvcType() const;
71 
72 
78  CaloIDHelper_IDDetDescrCnv (const CLID& clid, ISvcLocator* svcloc);
79 
80 
87  virtual StatusCode createHelper (const std::string& helperKey,
88  IdHelper* & idhelper,
89  DataObject*& pObj) = 0;
90 };
91 
92 
102 template <class T>
103 StatusCode make_CaloIDHelper (ISvcLocator* svcloc,
104  const std::string& helperKey,
105  T* & idhelper);
106 
107 
116 template <class T>
119 {
120 
121 public:
126  static const CLID& classID();
127 
128 
133  CaloIDHelper_IDDetDescrCnv_T (ISvcLocator* svcloc);
134 
135 
142  virtual StatusCode createHelper (const std::string& helperKey,
143  IdHelper* & idhelper,
144  DataObject*& pObj);
145 };
146 
147 
148 } // namespace CaloIdCnv
149 
150 
152 
153 
154 #endif // not CALOIDCNV_CALOIDHELPER_IDDETDESCRCNV_H
CaloIdCnv::CaloIDHelper_IDDetDescrCnv_T::classID
static const CLID & classID()
Return the CLID of the class we create.
CaloIdCnv::CaloIDHelper_IDDetDescrCnv_T
Class for calo ID helper converters.
Definition: CaloIDHelper_IDDetDescrCnv.h:119
CaloIdCnv::CaloIDHelper_IDDetDescrCnv::createHelper
virtual StatusCode createHelper(const std::string &helperKey, IdHelper *&idhelper, DataObject *&pObj)=0
Create the helper object.
CaloIdCnv::CaloIDHelper_IDDetDescrCnv::CaloIDHelper_IDDetDescrCnv
CaloIDHelper_IDDetDescrCnv(const CLID &clid, ISvcLocator *svcloc)
Constructor.
Definition: CaloIDHelper_IDDetDescrCnv.cxx:101
CaloIdCnv::make_CaloIDHelper
StatusCode make_CaloIDHelper(ISvcLocator *svcloc, const std::string &helperKey, T *&idhelper)
Helper function to actually create a new helper.
CaloIdCnv::CaloIDHelper_IDDetDescrCnv::createObj
virtual StatusCode createObj(IOpaqueAddress *pAddr, DataObject *&pObj)
Called by the converter infrastructure to create an object.
Definition: CaloIDHelper_IDDetDescrCnv.cxx:33
DetDescrConverter
Definition: DetDescrConverter.h:32
IdHelper
Definition: IdHelper.h:39
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
CaloIDHelper_IDDetDescrCnv.icc
CLID
uint32_t CLID
The Class ID type.
Definition: Event/xAOD/xAODCore/xAODCore/ClassID_traits.h:47
CaloIdCnv::CaloIDHelper_IDDetDescrCnv
Base class for calo ID helper converters.
Definition: CaloIDHelper_IDDetDescrCnv.h:57
DetDescrConverter.h
CaloIdCnv::CaloIDHelper_IDDetDescrCnv_T::createHelper
virtual StatusCode createHelper(const std::string &helperKey, IdHelper *&idhelper, DataObject *&pObj)
Create the helper object.
CaloIdCnv::CaloIDHelper_IDDetDescrCnv::repSvcType
virtual long int repSvcType() const
Return the service type.
Definition: CaloIDHelper_IDDetDescrCnv.cxx:90
CaloIdCnv::CaloIDHelper_IDDetDescrCnv_T::CaloIDHelper_IDDetDescrCnv_T
CaloIDHelper_IDDetDescrCnv_T(ISvcLocator *svcloc)
Constructor.
CaloIdCnv
Definition: CaloIDHelper_IDDetDescrCnv.h:43