#include <MuonCalibStreamAddressProviderSvc.h>
◆ MuonCalibStreamAddressProviderSvc()
| MuonCalibStreamAddressProviderSvc::MuonCalibStreamAddressProviderSvc |
( |
const std::string & | name, |
|
|
ISvcLocator * | svcloc ) |
Standard constructor.
Definition at line 12 of file MuonCalibStreamAddressProviderSvc.cxx.
12 :
13 base_class(name, svc),
14 m_dataSvc(
"MuonCalibStreamDataProviderSvc", name) {
15 m_typeNames.push_back(
"Muon::MdtPrepDataContainer/MDT_DriftCircles");
18
21}
std::vector< std::string > m_typeNames
ServiceHandle< IMuonCalibStreamDataProviderSvc > m_dataSvc
◆ ~MuonCalibStreamAddressProviderSvc()
| MuonCalibStreamAddressProviderSvc::~MuonCalibStreamAddressProviderSvc |
( |
| ) |
|
|
virtual |
◆ initialize()
| StatusCode MuonCalibStreamAddressProviderSvc::initialize |
( |
| ) |
|
|
virtual |
◆ preLoadAddresses()
| StatusCode MuonCalibStreamAddressProviderSvc::preLoadAddresses |
( |
StoreID::type | id, |
|
|
tadList & | tlist ) |
|
virtual |
Definition at line 33 of file MuonCalibStreamAddressProviderSvc.cxx.
33 {
34 ATH_MSG_DEBUG(
" call MuonCalibStreamAddressProviderSvc::preLoadAddresses");
35
37 ATH_MSG_DEBUG(
"idp = " << idp <<
" != StoreID::EVENT_STORE; not creating TADs");
38 return StatusCode::SUCCESS;
39 } else {
40 ATH_MSG_DEBUG(
"idp = " << idp <<
" == StoreID::EVENT_STORE; Creating TADs for muon detectors!");
41 }
42
43
44 std::vector<std::string>::const_iterator
it =
m_typeNames.begin();
45 std::vector<std::string>::const_iterator it_e =
m_typeNames.end();
46
47 SmartIF<IClassIDSvc> clidSvc{service("ClassIDSvc")};
49
50 for (;
it != it_e; ++
it) {
51 Gaudi::Utils::TypeNameString
item(*it);
52 std::string
t =
item.type();
53 std::string
nm =
item.name();
54
56 ATH_CHECK(clidSvc->getIDOfTypeName(t,
id));
57
58 SG::TransientAddress *tad = new SG::TransientAddress(id, nm);
60 ATH_MSG_DEBUG(
" created TAD for (type,clid,name,TAD)" << t <<
" " <<
id <<
" " << nm);
61
62
64 }
65 return StatusCode::SUCCESS;
66}
uint32_t CLID
The Class ID type.
std::map< CLID, std::set< std::string > > m_clidKey
◆ updateAddress()
update an existing transient Address
Definition at line 69 of file MuonCalibStreamAddressProviderSvc.cxx.
69 {
71 std::string
nm = tad->
name();
72 std::map<CLID, std::set<std::string> >::const_iterator
it =
m_clidKey.find(clid);
73
74 if (it ==
m_clidKey.end())
return StatusCode::FAILURE;
75
76 if ((*it).second.count(nm) == 0) return StatusCode::FAILURE;
77
79
80 MuonCalibStreamAddress *
add =
new MuonCalibStreamAddress(clid, nm,
"");
82 return StatusCode::SUCCESS;
83}
CLID clID() const
Retrieve string key:
const std::string & name() const
Get the primary (hashed) SG key.
void setAddress(CxxUtils::RefCountedPtr< IOpaqueAddress > pAddress)
Retrieve primary clid.
bool add(const std::string &hname, TKey *tobj)
◆ m_clidKey
| std::map<CLID, std::set<std::string> > MuonCalibStreamAddressProviderSvc::m_clidKey |
|
private |
◆ m_dataSvc
◆ m_typeNames
| std::vector<std::string> MuonCalibStreamAddressProviderSvc::m_typeNames |
|
private |
The documentation for this class was generated from the following files: