ATLAS Offline Software
Loading...
Searching...
No Matches
CondProxyProvider.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef CONDPROXYPROVIDER_H
6#define CONDPROXYPROVIDER_H
7
12
13#include "GaudiKernel/ServiceHandle.h"
14#include "Gaudi/Property.h" /*no forward decl: typedef*/
18#include <memory>
19
20// Forward declarations
21namespace pool {
23}
24class ISvcLocator;
26class StoreGateSvc;
27
31class CondProxyProvider : public extends<AthService, IAddressProvider> {
32public: // Constructor and Destructor
34 CondProxyProvider(const std::string& name, ISvcLocator* pSvcLocator);
36 virtual ~CondProxyProvider();
37
39 virtual StatusCode initialize() override;
40
44 virtual StatusCode preLoadAddresses(StoreID::type storeID, IAddressProvider::tadList& tads) override;
45
47 virtual StatusCode loadAddresses(StoreID::type storeID, IAddressProvider::tadList& tads) override;
48
52 virtual StatusCode updateAddress(StoreID::type storeID, SG::TransientAddress* tad,
53 const EventContext& ctx) override;
54
55private: // data
56 ServiceHandle<IAthenaPoolCnvSvc> m_athenaPoolCnvSvc{this, "ConversionService", "AthenaPoolCnvSvc"};
57 unsigned int m_contextId;
58
59private: // properties
61 Gaudi::Property<std::vector<std::string>> m_inputCollectionsProp
62 { this, "InputCollections", {}, "Files to read", "OrderedSet<std::string>" };
63 std::vector<std::string>::const_iterator m_inputCollectionsIterator{};
64
65private: // internal helper functions
67 std::unique_ptr<PoolCollectionConverter> getCollectionCnv();
68};
69
70#endif
This file contains the class definition for the IAthenaPoolCnvSvc interface class.
unsigned int m_contextId
std::unique_ptr< PoolCollectionConverter > getCollectionCnv()
Return pointer to new PoolCollectionConverter.
virtual StatusCode updateAddress(StoreID::type storeID, SG::TransientAddress *tad, const EventContext &ctx) override
Update a transient address.
virtual StatusCode initialize() override
Required of all Gaudi Services.
std::vector< std::string >::const_iterator m_inputCollectionsIterator
virtual StatusCode loadAddresses(StoreID::type storeID, IAddressProvider::tadList &tads) override
Implementation of the loadAddresses function without any functionality.
virtual ~CondProxyProvider()
Destructor.
ServiceHandle< IAthenaPoolCnvSvc > m_athenaPoolCnvSvc
CondProxyProvider(const std::string &name, ISvcLocator *pSvcLocator)
Standard Service Constructor.
virtual StatusCode preLoadAddresses(StoreID::type storeID, IAddressProvider::tadList &tads) override
Get all addresses from provider.
Gaudi::Property< std::vector< std::string > > m_inputCollectionsProp
InputCollections, vector with names of the input collections.
std::list< SG::TransientAddress * > tadList
This class provides an interface to POOL collections.
The Athena Transient Store API.
An interface used to navigate the result of a query on a collection.
pool namespace
Definition libname.h:15