ATLAS Offline Software
AthenaPoolCnvSvc.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef ATHENAPOOLCNVSVC_ATHENAPOOLCNVSVC_H
6 #define ATHENAPOOLCNVSVC_ATHENAPOOLCNVSVC_H
7 
14 
15 #include "GaudiKernel/IClassIDSvc.h"
16 #include "GaudiKernel/IIncidentListener.h"
17 #include "GaudiKernel/IIoComponent.h"
18 #include "GaudiKernel/ServiceHandle.h"
19 #include "GaudiKernel/ToolHandle.h"
20 
21 #include "StorageSvc/DbType.h"
25 #include "PoolSvc/IPoolSvc.h"
26 
27 #include <vector>
28 #include <map>
29 #include <mutex>
30 #include <limits>
31 
32 // Forward declarations
34 class Guid;
35 
36 template <class TYPE> class SvcFactory;
37 
41 class AthenaPoolCnvSvc : public extends<AthCnvSvc,
42  IAthenaPoolCnvSvc,
43  IIncidentListener,
44  IIoComponent> {
45  // Allow the factory class access to the constructor
46  friend class SvcFactory<AthenaPoolCnvSvc>;
47 
48 public:
49 
51  virtual StatusCode initialize() override;
52  virtual StatusCode io_reinit() override;
54  virtual StatusCode finalize() override;
55  virtual StatusCode io_finalize() override;
56  virtual StatusCode stop() override final;
57 
61  virtual StatusCode createObj(IOpaqueAddress* pAddress, DataObject*& refpObject) override;
62 
66  virtual StatusCode createRep(DataObject* pObject, IOpaqueAddress*& refpAddress) override;
67 
71  virtual StatusCode fillRepRefs(IOpaqueAddress* pAddress, DataObject* pObject) override;
72 
76  virtual StatusCode connectOutput(const std::string& outputConnectionSpec,
77  const std::string& openMode) override;
78 
82  virtual StatusCode connectOutput(const std::string& outputConnectionSpec) override;
83 
86  virtual StatusCode commitOutput(const std::string& outputConnectionSpec, bool doCommit) override;
87 
89  virtual StatusCode disconnectOutput(const std::string& outputConnectionSpec) override;
90 
92  virtual IPoolSvc* getPoolSvc() override;
93 
98  virtual Token* registerForWrite(Placement* placement, const void* obj, const RootType& classDesc) override;
99 
102  virtual void setObjPtr(void*& obj, const Token* token) override;
103 
105  virtual bool useDetailChronoStat() const override;
106 
113  StatusCode createAddress(long svcType,
114  const CLID& clid,
115  const std::string* par,
116  const unsigned long* ip,
117  IOpaqueAddress*& refpAddress) override;
118 
124  virtual StatusCode createAddress(long svcType,
125  const CLID& clid,
126  const std::string& refAddress,
127  IOpaqueAddress*& refpAddress) override;
128 
132  virtual StatusCode convertAddress(const IOpaqueAddress* pAddress, std::string& refAddress) override;
133 
136  virtual StatusCode decodeOutputSpec(std::string& connectionSpec, int& outputTech) const override;
137 
139  virtual StatusCode registerCleanUp(IAthenaPoolCleanUp* cnv) override;
140 
142  virtual StatusCode cleanUp(const std::string& connection) override;
143 
146  virtual StatusCode setInputAttributes(const std::string& fileName) override;
147 
149  virtual StatusCode makeServer(int num) override;
150 
152  virtual StatusCode makeClient(int num) override;
153 
155  virtual StatusCode readData() override;
156 
158  virtual StatusCode commitCatalog() override;
159 
162  StatusCode abortSharedWrClients(int client_n);
163 
165  virtual void handle(const Incident& incident) override;
166 
168  void flushDataHeaderForms(const std::string& streamName = "*");
169 
171  AthenaPoolCnvSvc(const std::string& name, ISvcLocator* pSvcLocator);
173  virtual ~AthenaPoolCnvSvc() = default;
174 
175 private: // member functions
177  void extractPoolAttributes(const StringArrayProperty& property,
178  std::vector<std::vector<std::string> >* contAttr,
179  std::vector<std::vector<std::string> >* dbAttr,
180  std::vector<std::vector<std::string> >* domAttr = 0) const;
181 
183  StatusCode processPoolAttributes(std::vector<std::vector<std::string> >& attr,
184  const std::string& fileName,
185  unsigned long contextId,
186  bool doGet = true,
187  bool doSet = true,
188  bool doClear = true) const;
189 
190 private: // data
193  std::string m_lastInputFileName;
194  ServiceHandle<IPoolSvc> m_poolSvc{this,"PoolSvc","PoolSvc"};
195  ServiceHandle<IClassIDSvc> m_clidSvc{this,"ClassIDSvc","ClassIDSvc"};
196  ServiceHandle<IAthenaSerializeSvc> m_serializeSvc{this,"AthenaRootSerializeSvc","AthenaRootSerializeSvc"};
197  ToolHandle<IAthenaIPCTool> m_inputStreamingTool{this,"InputStreamingTool",{}};
198  ToolHandle<IAthenaIPCTool> m_outputStreamingTool{this,"OutputStreamingTool",{}};
201 
204 
205 private: // properties
208  BooleanProperty m_useDetailChronoStat{this,"UseDetailChronoStat",false};
209 
211  StringProperty m_storageTechProp{this,"StorageTechnology", "ROOTTREEINDEX"};
214  StringProperty m_containerPrefixProp{this,"PoolContainerPrefix","Default"};
216  StringProperty m_containerNameHintProp{this,"TopLevelContainerName",""};
218  StringProperty m_branchNameHintProp{this,"SubLevelBranchName", "<type>/<key>"};
219 
221  StringArrayProperty m_poolAttr{this,"PoolAttributes",{},"Pool Attributes","OrderedSet<std::string>"};
222  std::vector<std::vector<std::string> > m_domainAttr;
223  std::vector<std::vector<std::string> > m_databaseAttr;
224  std::vector<std::vector<std::string> > m_containerAttr;
225  std::vector<unsigned int> m_contextAttr;
226  std::map<std::string, int> m_fileCommitCounter;
227  std::map<std::string, int> m_fileFlushSetting;
229  StringArrayProperty m_inputPoolAttr{this,"InputPoolAttributes",{}};
230  std::vector<std::vector<std::string> > m_inputAttr;
233  StringArrayProperty m_inputPoolAttrPerEvent{this,"PrintInputAttrPerEvt",{}};
234  std::vector<std::vector<std::string> > m_inputAttrPerEvent;
235 
237  StringArrayProperty m_maxFileSizes{this,"MaxFileSizes",{}};
239  std::map<std::string, long long> m_databaseMaxFileSize;
240 
243  BooleanProperty m_persSvcPerOutput{this,"PersSvcPerOutput",true};
244  unsigned outputContextId(const std::string& outputConnection);
245 
248  StringProperty m_persSvcPerInputType{this,"PersSvcPerInputType",""};
250 
253  StringProperty m_metadataContainerProp{this,"OutputMetadataContainer","MetaData"};
254  StringArrayProperty m_metadataContainersAug{this, "OutputMetadataContainers", {}, "Metadata containers used for augmentations"};
255 
257  IntegerProperty m_makeStreamingToolClient{this,"MakeStreamingToolClient",0};
259  IntegerProperty m_streamingTechnology{this,"StreamingTechnology",-1};
261  BooleanProperty m_parallelCompression{this,"ParallelCompression",true};
263  StringProperty m_streamPortString{this,"StreamPortString","?pmerge=localhost:0"};
265  IntegerProperty m_numberEventsPerWrite{this,"NumberEventsPerWrite",-1};
266 
268  BooleanProperty m_oneDataHeaderForm { this, "OneDataHeaderForm", false };
270  IntegerProperty m_DHFormCacheSize { this, "maxDHFormCacheSize", 100 };
272  BooleanProperty m_DHFilterAliases { this, "doFilterDHAliases", true };
273 
274 };
275 
276 #endif
AthenaPoolCnvSvc::m_poolSvc
ServiceHandle< IPoolSvc > m_poolSvc
Definition: AthenaPoolCnvSvc.h:194
AthenaPoolCnvSvc::m_contextAttr
std::vector< unsigned int > m_contextAttr
Definition: AthenaPoolCnvSvc.h:225
AthenaPoolCnvSvc::registerCleanUp
virtual StatusCode registerCleanUp(IAthenaPoolCleanUp *cnv) override
Implement registerCleanUp to register a IAthenaPoolCleanUp to be called during cleanUp.
Definition: AthenaPoolCnvSvc.cxx:1050
AthenaPoolCnvSvc::createAddress
StatusCode createAddress(long svcType, const CLID &clid, const std::string *par, const unsigned long *ip, IOpaqueAddress *&refpAddress) override
Create a Generic address using explicit arguments to identify a single object.
Definition: AthenaPoolCnvSvc.cxx:945
AthenaPoolCnvSvc::cleanUp
virtual StatusCode cleanUp(const std::string &connection) override
Implement cleanUp to call all registered IAthenaPoolCleanUp cleanUp() function.
Definition: AthenaPoolCnvSvc.cxx:1055
Placement
This class holds all the necessary information to guide the writing of an object in a physical place.
Definition: Placement.h:19
IPoolSvc
This class provides the interface to the LCG POOL persistency software.
Definition: IPoolSvc.h:35
AthenaPoolCnvSvc::m_metadataContainerProp
StringProperty m_metadataContainerProp
For SharedWriter: To use MetadataSvc to merge data placed in a certain container.
Definition: AthenaPoolCnvSvc.h:253
IAthenaPoolCnvSvc.h
This file contains the class definition for the IAthenaPoolCnvSvc interface class.
AthenaPoolCnvSvc::initialize
virtual StatusCode initialize() override
Required of all Gaudi Services.
Definition: AthenaPoolCnvSvc.cxx:39
max
#define max(a, b)
Definition: cfImp.cxx:41
AthenaPoolCnvSvc::outputContextId
unsigned outputContextId(const std::string &outputConnection)
Definition: AthenaPoolCnvSvc.cxx:738
PMonUtils::BasicStopWatchResultMap_t
tbb::concurrent_hash_map< std::string, double > BasicStopWatchResultMap_t
Definition: BasicStopWatch.h:15
AthenaPoolCnvSvc::m_clidSvc
ServiceHandle< IClassIDSvc > m_clidSvc
Definition: AthenaPoolCnvSvc.h:195
AthenaPoolCnvSvc::m_inputStreamingTool
ToolHandle< IAthenaIPCTool > m_inputStreamingTool
Definition: AthenaPoolCnvSvc.h:197
AthenaPoolCnvSvc::m_streamingTechnology
IntegerProperty m_streamingTechnology
Use Streaming for selected technologies only.
Definition: AthenaPoolCnvSvc.h:259
AthenaPoolCnvSvc::m_useDetailChronoStat
BooleanProperty m_useDetailChronoStat
UseDetailChronoStat, enable detailed output for time and size statistics for AthenaPOOL: default = fa...
Definition: AthenaPoolCnvSvc.h:208
BeamSpot::mutex
std::mutex mutex
Definition: InDetBeamSpotVertex.cxx:18
SvcFactory
Definition: AthCnvSvc.h:28
AthenaPoolCnvSvc::m_domainMaxFileSize
long long m_domainMaxFileSize
Definition: AthenaPoolCnvSvc.h:238
AthenaPoolCnvSvc::m_inputAttrPerEvent
std::vector< std::vector< std::string > > m_inputAttrPerEvent
Definition: AthenaPoolCnvSvc.h:234
AthenaPoolCnvSvc::decodeOutputSpec
virtual StatusCode decodeOutputSpec(std::string &connectionSpec, int &outputTech) const override
Extract/deduce the DB technology from the connection string/file specification.
Definition: AthenaPoolCnvSvc.cxx:1028
IAthenaPoolCleanUp
This class provides the interface for the AthenaPoolCleanUp which is used to clean up AthenaPoolConve...
Definition: IAthenaPoolCleanUp.h:19
AthCnvSvc.h
AthenaPoolCnvSvc::m_databaseAttr
std::vector< std::vector< std::string > > m_databaseAttr
Definition: AthenaPoolCnvSvc.h:223
AthenaPoolCnvSvc::m_chronoMap
PMonUtils::BasicStopWatchResultMap_t m_chronoMap
Map that holds chrono information.
Definition: AthenaPoolCnvSvc.h:203
AthenaPoolCnvSvc::fillRepRefs
virtual StatusCode fillRepRefs(IOpaqueAddress *pAddress, DataObject *pObject) override
Implementation of IConversionSvc: Resolve the references of the converted object.
Definition: AthenaPoolCnvSvc.cxx:265
AthenaPoolCnvSvc::m_dbType
pool::DbType m_dbType
decoded storage tech requested in "StorageTechnology" property
Definition: AthenaPoolCnvSvc.h:192
AthenaPoolCnvSvc::useDetailChronoStat
virtual bool useDetailChronoStat() const override
Definition: AthenaPoolCnvSvc.cxx:941
AthenaPoolCnvSvc::m_mutex
std::mutex m_mutex
Definition: AthenaPoolCnvSvc.h:249
DbType.h
AthenaPoolCnvSvc::setObjPtr
virtual void setObjPtr(void *&obj, const Token *token) override
Definition: AthenaPoolCnvSvc.cxx:860
AthenaPoolCnvSvc::AthenaPoolCnvSvc
AthenaPoolCnvSvc(const std::string &name, ISvcLocator *pSvcLocator)
Standard Service Constructor.
Definition: AthenaPoolCnvSvc.cxx:1254
AthenaPoolCnvSvc::getPoolSvc
virtual IPoolSvc * getPoolSvc() override
Definition: AthenaPoolCnvSvc.cxx:744
AthenaPoolCnvSvc::processPoolAttributes
StatusCode processPoolAttributes(std::vector< std::vector< std::string > > &attr, const std::string &fileName, unsigned long contextId, bool doGet=true, bool doSet=true, bool doClear=true) const
Set/get technology dependent POOL attributes.
Definition: AthenaPoolCnvSvc.cxx:1315
AthenaPoolCnvSvc::readData
virtual StatusCode readData() override
Read the next data object.
Definition: AthenaPoolCnvSvc.cxx:1144
IAthenaSerializeSvc
Definition: IAthenaSerializeSvc.h:13
AthenaPoolCnvSvc::makeClient
virtual StatusCode makeClient(int num) override
Make this a client.
Definition: AthenaPoolCnvSvc.cxx:1123
AthenaPoolCnvSvc::flushDataHeaderForms
void flushDataHeaderForms(const std::string &streamName="*")
Tell DataHeaderCnv to write out all DataHeaderForms for a given streamName (default is all)
Definition: AthenaPoolCnvSvc.cxx:132
AthenaPoolCnvSvc::m_fileFlushSetting
std::map< std::string, int > m_fileFlushSetting
Definition: AthenaPoolCnvSvc.h:227
AthenaPoolCnvSvc::m_oneDataHeaderForm
BooleanProperty m_oneDataHeaderForm
If true, use only one DataHeaderForm per Stream.
Definition: AthenaPoolCnvSvc.h:268
AthenaPoolCnvSvc::io_reinit
virtual StatusCode io_reinit() override
Definition: AthenaPoolCnvSvc.cxx:126
Token
This class provides a token that identifies in a unique way objects on the persistent storage.
Definition: Token.h:21
AthenaPoolCnvSvc::registerForWrite
virtual Token * registerForWrite(Placement *placement, const void *obj, const RootType &classDesc) override
Definition: AthenaPoolCnvSvc.cxx:748
AthenaPoolCnvSvc::m_persSvcPerInputType
StringProperty m_persSvcPerInputType
PersSvcPerInputType, string property, tree name to use multiple persistency services,...
Definition: AthenaPoolCnvSvc.h:248
AthenaPoolCnvSvc::createObj
virtual StatusCode createObj(IOpaqueAddress *pAddress, DataObject *&refpObject) override
Implementation of IConversionSvc: Create the transient representation of an object from persistent st...
Definition: AthenaPoolCnvSvc.cxx:198
AthenaPoolCnvSvc::m_storageTechProp
StringProperty m_storageTechProp
Default Storage Tech for containers (ROOTTREE, ROOTTREEINDEX, ROOTRNTUPLE)
Definition: AthenaPoolCnvSvc.h:211
AthenaPoolCnvSvc::extractPoolAttributes
void extractPoolAttributes(const StringArrayProperty &property, std::vector< std::vector< std::string > > *contAttr, std::vector< std::vector< std::string > > *dbAttr, std::vector< std::vector< std::string > > *domAttr=0) const
Extract POOL ItechnologySpecificAttributes for Domain, Database and Container from property.
Definition: AthenaPoolCnvSvc.cxx:1259
AthenaPoolCnvSvc::handle
virtual void handle(const Incident &incident) override
Implementation of IIncidentListener: Handle for EndEvent incidence.
Definition: AthenaPoolCnvSvc.cxx:1243
FortranAlgorithmOptions.fileName
fileName
Definition: FortranAlgorithmOptions.py:13
AthenaPoolCnvSvc::~AthenaPoolCnvSvc
virtual ~AthenaPoolCnvSvc()=default
Destructor.
BasicStopWatch.h
pool::DbType
Definition: DbType.h:31
AthenaPoolCnvSvc::m_metadataContainersAug
StringArrayProperty m_metadataContainersAug
Definition: AthenaPoolCnvSvc.h:254
AthenaPoolCnvSvc::setInputAttributes
virtual StatusCode setInputAttributes(const std::string &fileName) override
Set the input file attributes, if any are requested from jobOpts.
Definition: AthenaPoolCnvSvc.cxx:1076
AthenaPoolCnvSvc::finalize
virtual StatusCode finalize() override
Required of all Gaudi Services.
Definition: AthenaPoolCnvSvc.cxx:146
AthenaPoolCnvSvc::m_maxFileSizes
StringArrayProperty m_maxFileSizes
MaxFileSizes, vector with maximum file sizes for Athena POOL output files.
Definition: AthenaPoolCnvSvc.h:237
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthenaPoolCnvSvc::m_makeStreamingToolClient
IntegerProperty m_makeStreamingToolClient
Make this instance a Streaming Client during first connect/write automatically.
Definition: AthenaPoolCnvSvc.h:257
AthenaPoolCnvSvc::m_DHFilterAliases
BooleanProperty m_DHFilterAliases
Flag to control SG alias filtering when writing out DataHeader (see DataHeaderCnv_p6)
Definition: AthenaPoolCnvSvc.h:272
AthenaPoolCnvSvc::m_inputAttr
std::vector< std::vector< std::string > > m_inputAttr
Definition: AthenaPoolCnvSvc.h:230
AthenaPoolCnvSvc::m_databaseMaxFileSize
std::map< std::string, long long > m_databaseMaxFileSize
Definition: AthenaPoolCnvSvc.h:239
find_tgc_unfilled_channelids.ip
ip
Definition: find_tgc_unfilled_channelids.py:3
AthenaPoolCnvSvc::io_finalize
virtual StatusCode io_finalize() override
Definition: AthenaPoolCnvSvc.cxx:193
AthenaPoolCnvSvc::m_numberEventsPerWrite
IntegerProperty m_numberEventsPerWrite
When using TMemFile call Write on number of Events, respecting CollectionTree auto_flush.
Definition: AthenaPoolCnvSvc.h:265
AthenaPoolCnvSvc::convertAddress
virtual StatusCode convertAddress(const IOpaqueAddress *pAddress, std::string &refAddress) override
Convert address to string form.
Definition: AthenaPoolCnvSvc.cxx:1015
CLID
uint32_t CLID
The Class ID type.
Definition: Event/xAOD/xAODCore/xAODCore/ClassID_traits.h:47
AthenaPoolCnvSvc::disconnectOutput
virtual StatusCode disconnectOutput(const std::string &outputConnectionSpec) override
Disconnect to the output connection.
Definition: AthenaPoolCnvSvc.cxx:713
AthenaPoolCnvSvc::m_containerAttr
std::vector< std::vector< std::string > > m_containerAttr
Definition: AthenaPoolCnvSvc.h:224
trigbs_pickEvents.num
num
Definition: trigbs_pickEvents.py:76
AthenaPoolCnvSvc::makeServer
virtual StatusCode makeServer(int num) override
Make this a server.
Definition: AthenaPoolCnvSvc.cxx:1097
AthenaPoolCnvSvc::commitOutput
virtual StatusCode commitOutput(const std::string &outputConnectionSpec, bool doCommit) override
Implementation of IConversionSvc: Commit pending output.
Definition: AthenaPoolCnvSvc.cxx:399
AthenaPoolCnvSvc::m_streamServerActive
bool m_streamServerActive
Definition: AthenaPoolCnvSvc.h:199
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:221
createCoolChannelIdFile.par
par
Definition: createCoolChannelIdFile.py:29
AthenaPoolCnvSvc::m_persSvcPerOutput
BooleanProperty m_persSvcPerOutput
PersSvcPerOutput, boolean property to use multiple persistency services, one per output stream.
Definition: AthenaPoolCnvSvc.h:243
AthenaPoolCnvSvc::createRep
virtual StatusCode createRep(DataObject *pObject, IOpaqueAddress *&refpAddress) override
Implementation of IConversionSvc: Convert the transient object to the requested representation.
Definition: AthenaPoolCnvSvc.cxx:232
AthenaPoolCnvSvc::commitCatalog
virtual StatusCode commitCatalog() override
Commit Catalog.
Definition: AthenaPoolCnvSvc.cxx:1214
AthenaPoolCnvSvc::m_inputPoolAttr
StringArrayProperty m_inputPoolAttr
Input PoolAttributes, vector with names and values of technology specific attributes for POOL.
Definition: AthenaPoolCnvSvc.h:229
IPoolSvc.h
This file contains the class definition for the IPoolSvc interface class.
AthenaPoolCnvSvc::m_streamPortString
StringProperty m_streamPortString
Extension to use ROOT TMemFile for event data, "?pmerge=<host>:<port>".
Definition: AthenaPoolCnvSvc.h:263
AthenaPoolCnvSvc::m_domainAttr
std::vector< std::vector< std::string > > m_domainAttr
Definition: AthenaPoolCnvSvc.h:222
AthenaPoolCnvSvc::m_fileCommitCounter
std::map< std::string, int > m_fileCommitCounter
Definition: AthenaPoolCnvSvc.h:226
AthenaPoolCnvSvc::m_metadataClient
int m_metadataClient
Definition: AthenaPoolCnvSvc.h:200
AthenaPoolExample_Copy.streamName
string streamName
Definition: AthenaPoolExample_Copy.py:39
Guid
This class provides a encapsulation of a GUID/UUID/CLSID/IID data structure (128 bit number).
Definition: Guid.h:20
AthenaPoolCnvSvc::m_branchNameHintProp
StringProperty m_branchNameHintProp
SubLevelBranchName, naming hint policy for POOL branching: ("" = no branching)
Definition: AthenaPoolCnvSvc.h:218
AthenaPoolCnvSvc::abortSharedWrClients
StatusCode abortSharedWrClients(int client_n)
Send abort to SharedWriter clients if the server quits on error.
Definition: AthenaPoolCnvSvc.cxx:1223
AthenaPoolCnvSvc::m_outputStreamingTool
ToolHandle< IAthenaIPCTool > m_outputStreamingTool
Definition: AthenaPoolCnvSvc.h:198
AthenaPoolCnvSvc::connectOutput
virtual StatusCode connectOutput(const std::string &outputConnectionSpec, const std::string &openMode) override
Implementation of IConversionSvc: Connect to the output connection specification with open mode.
Definition: AthenaPoolCnvSvc.cxx:298
AthenaPoolCnvSvc::m_containerNameHintProp
StringProperty m_containerNameHintProp
TopLevelContainerName, naming hint policy for top level POOL container: default = "<type>".
Definition: AthenaPoolCnvSvc.h:216
AthenaPoolCnvSvc::m_poolAttr
StringArrayProperty m_poolAttr
Output PoolAttributes, vector with names and values of technology specific attributes for POOL.
Definition: AthenaPoolCnvSvc.h:221
AthenaPoolCnvSvc::m_inputPoolAttrPerEvent
StringArrayProperty m_inputPoolAttrPerEvent
Print input PoolAttributes per event, vector with names of technology specific attributes for POOL to...
Definition: AthenaPoolCnvSvc.h:233
AthenaPoolCnvSvc::m_DHFormCacheSize
IntegerProperty m_DHFormCacheSize
Property for DataHeaderCnv input DHForm cache size.
Definition: AthenaPoolCnvSvc.h:270
AthenaPoolCnvSvc::m_containerPrefixProp
StringProperty m_containerPrefixProp
POOL Container name prefix - will be part of or whole TTree/RNTuple name 'Default' takes the prefix f...
Definition: AthenaPoolCnvSvc.h:214
python.PyAthena.obj
obj
Definition: PyAthena.py:132
AthenaPoolCnvSvc::m_parallelCompression
BooleanProperty m_parallelCompression
Use Athena Object sharing for metadata only, event data is collected and send via ROOT TMemFile.
Definition: AthenaPoolCnvSvc.h:261
AthenaPoolCnvSvc::m_lastInputFileName
std::string m_lastInputFileName
Definition: AthenaPoolCnvSvc.h:193
AthenaPoolCnvSvc::m_serializeSvc
ServiceHandle< IAthenaSerializeSvc > m_serializeSvc
Definition: AthenaPoolCnvSvc.h:196
AthenaPoolCnvSvc::stop
virtual StatusCode stop() override final
Definition: AthenaPoolCnvSvc.cxx:139
IAthenaIPCTool.h
ServiceHandle< IPoolSvc >
TScopeAdapter
Definition: RootType.h:119
AthenaPoolCnvSvc
Definition: Database/AthenaPOOL/AthenaPoolCnvSvc/AthenaPoolCnvSvc/debug.h:26