ATLAS Offline Software
xAODCnvSvc.h
Go to the documentation of this file.
1 
3 /*
4  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 // NtupleCnvSvc.h
8 // Header file for class NtupleCnvSvc
9 // Author: S.Binet<binet@cern.ch>
11 #ifndef ATHENAROOTCOMPS_XAODCNVSVC_H
12 #define ATHENAROOTCOMPS_XAODCNVSVC_H 1
13 
14 // STL includes
15 #include <string>
16 
17 // FrameWork includes
19 
20 // GaudiKernel
21 #include "GaudiKernel/IConversionSvc.h"
22 
23 
24 namespace Athena {
25 
27  : public extends<::AthCnvSvc, ::IConversionSvc>
28 {
30  // Public methods:
32  public:
33 
35  xAODCnvSvc( const std::string& name, ISvcLocator* pSvcLocator );
36 
38  virtual ~xAODCnvSvc();
39 
40  // Assignment operator:
41  //xAODCnvSvc &operator=(const xAODCnvSvc &alg);
42 
44 
45  virtual StatusCode initialize();
46  virtual StatusCode finalize();
48 
50 
51 
54  virtual
55  StatusCode updateServiceState(IOpaqueAddress* pAddress);
56 
61  virtual
62  StatusCode createObj(IOpaqueAddress* pAddress, DataObject*& refpObject);
63 
69  virtual
70  StatusCode createRep(DataObject* pObject, IOpaqueAddress*& refpAddress);
71 
77  virtual
78  StatusCode fillRepRefs(IOpaqueAddress* pAddress, DataObject* pObject);
79 
84  virtual
85  StatusCode connectOutput(const std::string& outputConnectionSpec,
86  const std::string& openMode);
87 
91  virtual
92  StatusCode connectOutput(const std::string& outputConnectionSpec);
93 
95  virtual
96  StatusCode commitOutput(const std::string& outputConnectionSpec,
97  bool doCommit);
98 
100 
102 
103 
111  virtual
112  StatusCode createAddress(long svcType,
113  const CLID& clid,
114  const std::string* par,
115  const unsigned long* ip,
116  IOpaqueAddress*& refpAddress);
117 
121  virtual
122  StatusCode convertAddress(const IOpaqueAddress* pAddress,
123  std::string& refAddress);
124 
130  virtual
131  StatusCode createAddress(long svcType,
132  const CLID& clid,
133  const std::string& refAddress,
134  IOpaqueAddress*& refpAddress);
136 
137 protected:
138 
140  virtual
141  IConverter* createConverter(long typ,
142  const CLID& clid,
143  const ICnvFactory* fac);
144 
146  // Private data:
148  private:
149 
152 
154 
155 
156 };
157 
158 } //> end namespace Athena
159 
160 #endif //> !ATHENAROOTCOMPS_XAODCNVSVC_H
Athena::xAODCnvSvc
Definition: xAODCnvSvc.h:28
Athena::xAODCnvSvc::updateServiceState
virtual StatusCode updateServiceState(IOpaqueAddress *pAddress)
IConversionSvc and IConverter interfaces
Definition: xAODCnvSvc.cxx:67
Athena::xAODCnvSvc::createRep
virtual StatusCode createRep(DataObject *pObject, IOpaqueAddress *&refpAddress)
Implementation of IConverter: Convert the transient object to the requested representation.
Definition: xAODCnvSvc.cxx:105
AthCnvSvc.h
Athena::xAODCnvSvc::convertAddress
virtual StatusCode convertAddress(const IOpaqueAddress *pAddress, std::string &refAddress)
Convert address to string form.
Definition: xAODCnvSvc.cxx:209
Athena::xAODCnvSvc::createAddress
virtual StatusCode createAddress(long svcType, const CLID &clid, const std::string *par, const unsigned long *ip, IOpaqueAddress *&refpAddress)
IAddressCreator interfaces
Definition: xAODCnvSvc.cxx:193
Athena::xAODCnvSvc::fillRepRefs
virtual StatusCode fillRepRefs(IOpaqueAddress *pAddress, DataObject *pObject)
Implementation of IConverter: Resolve the references of the converted object.
Definition: xAODCnvSvc.cxx:122
Athena::xAODCnvSvc::~xAODCnvSvc
virtual ~xAODCnvSvc()
Destructor:
Definition: xAODCnvSvc.cxx:43
Athena::xAODCnvSvc::commitOutput
virtual StatusCode commitOutput(const std::string &outputConnectionSpec, bool doCommit)
Commit pending output.
Definition: xAODCnvSvc.cxx:172
Athena
Some weak symbol referencing magic...
Definition: AthLegacySequence.h:21
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
find_tgc_unfilled_channelids.ip
ip
Definition: find_tgc_unfilled_channelids.py:3
CLID
uint32_t CLID
The Class ID type.
Definition: Event/xAOD/xAODCore/xAODCore/ClassID_traits.h:47
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:221
createCoolChannelIdFile.par
par
Definition: createCoolChannelIdFile.py:29
Athena::xAODCnvSvc::createConverter
virtual IConverter * createConverter(long typ, const CLID &clid, const ICnvFactory *fac)
Create new Converter using factory (override AthCnvSvc::createConverter)
Definition: xAODCnvSvc.cxx:261
Athena::xAODCnvSvc::initialize
virtual StatusCode initialize()
Gaudi Service Implementation.
Definition: xAODCnvSvc.cxx:49
Athena::xAODCnvSvc::connectOutput
virtual StatusCode connectOutput(const std::string &outputConnectionSpec, const std::string &openMode)
Connect the output connection specification to the service with open mode.
Definition: xAODCnvSvc.cxx:138
Athena::xAODCnvSvc::createObj
virtual StatusCode createObj(IOpaqueAddress *pAddress, DataObject *&refpObject)
Implementation of IConverter: Create the transient representation of an object from persistent state.
Definition: xAODCnvSvc.cxx:83
Athena::xAODCnvSvc::finalize
virtual StatusCode finalize()
Definition: xAODCnvSvc.cxx:57
Athena::xAODCnvSvc::xAODCnvSvc
xAODCnvSvc()
Default constructor: