15#include "boost/tokenizer.hpp"
48 return StatusCode::SUCCESS;
61 typedef boost::tokenizer<boost::char_separator<char> > tokenizer;
62 boost::char_separator<char> sep(
" ,");
64 std::vector<std::string> keys (tokens.begin(), tokens.end());
67 std::vector<const SG::DataProxy*> proxies =
m_sg->proxies();
69 if (p->transientID (
m_clid) &&
70 std::find (keys.begin(), keys.end(), p->name()) != keys.end())
73 std::find (keys.begin(), keys.end(), p->name()) <
74 std::find (keys.begin(), keys.end(),
m_usedKey))
85 for (std::string&
key : keys) {
96 <<
"Using StoreGate object: "
Helpers for checking error return status codes and reporting errors.
#define REPORT_MESSAGE_WITH_CONTEXT(LVL, CONTEXT_NAME)
Report a message, with an explicitly specified context name.
uint32_t CLID
The Class ID type.
Helper to resolve the SG key to use.
ServiceHandle< StoreGateSvc > & m_sg
The event storage service.
bool m_haveKey
Flag that m_usedKey is valid.
std::string m_name
The name of the tool/alg in which this is used.
SGKeyResolver(const std::string &name, ServiceHandle< StoreGateSvc > &sg, std::string &sgkey)
Constructor.
CLID m_clid
The CLID of the desired type.
std::string m_typname
The name of the desired type.
std::string m_usedKey
The actual key we'll use.
std::string & m_sgkey
The requested SG key.
std::string key()
Return the SG key we should use.
StatusCode initialize()
Initialize, from a type.
Block filler tool for noisy FEB information.