 |
ATLAS Offline Software
|
Go to the documentation of this file.
32 <<
"\" to the output");
35 std::set<std::string>
keys;
47 if (std::regex_match(
key,
re) ==
false) {
51 static const bool SILENT =
true;
56 if (
key.ends_with(
"Aux.")) {
60 if (efe.parentName() !=
"") {
75 if (std::regex_match(
newname,
re) ==
false) {
79 static const bool SILENT =
true;
89 for (
const std::string&
key :
keys) {
92 std::string keyToUse =
key;
97 keyToUse = remap_itr->second;
101 static const bool SILENT =
false;
108 return StatusCode::FAILURE;
112 if (objMgr ==
nullptr) {
114 return StatusCode::FAILURE;
116 static const bool METADATA =
false;
118 SILENT, METADATA) ==
nullptr) {
120 return StatusCode::FAILURE;
124 static const bool OVERWRITE =
true;
125 static const bool IS_OWNER =
true;
127 key, OVERWRITE, METADATA, IS_OWNER));
131 const std::string auxKey = keyToUse +
"Aux.";
139 return StatusCode::SUCCESS;
182 if (itr->second->isSet() ==
false) {
189 if (
mgr ==
nullptr) {
219 const std::type_info& ti,
bool silent,
223 std::string keyToUse =
key;
228 keyToUse = remap_itr->second;
234 if (
store &&
store->contains(keyToUse, ti) &&
store->isConst(keyToUse, ti)) {
235 const void*
result =
store->getConstObject(keyToUse, ti);
250 if (
sc.isSuccess() ==
false) {
258 auto itr =
objects.find(keyToUse);
260 ATH_MSG_FATAL(
"There is an internal logic error in the code...");
267 if (
mgr ==
nullptr) {
268 if (
key == keyToUse) {
272 <<
key <<
"\"/\"" << keyToUse <<
"\"");
279 const Int_t readBytes =
mgr->getEntry();
284 static const bool IS_METADATA =
false;
287 <<
mgr->holder()->getClass()->GetName() <<
"/"
291 }
else if (readBytes < 0) {
293 <<
mgr->holder()->getClass()->GetName() <<
"/" << keyToUse);
303 << keyToUse <<
"\" as \""
325 static const bool SILENT =
true;
342 const std::type_info& ti,
StatusCode keys(std::vector< std::string > &vkeys, bool metadata) const
Provide a list of all data object keys associated with a specific type.
virtual StatusCode setAuxStore(const std::string &key, Details::IObjectManager &mgr, bool metadata)=0
Function connecting a DV object to its auxiliary store.
Object_t m_inputObjects
Collection of all the managed input objects.
std::string normalizedTypeinfoName(const std::type_info &info)
Convert a type_info to a normalized string representation (matching the names used in the root dictio...
Object_t m_outputMetaObjects
Collection of all the managed output meta-objects.
EventFormat m_inputEventFormat
Format of the current input file.
const THolder * holder() const
Accessor to the Holder object.
static TStore * store()
Access the currently active TStore object.
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
std::unordered_map< std::string, std::string > m_nameRemapping
Container name re-mapping rules.
#define ATH_MSG_VERBOSE(x)
StatusCode copy(const std::string &pattern=".*")
Copy an object directly from the input to the output.
std::unordered_map< std::string, std::unique_ptr< TVirtualManager > > Object_t
Definition of the internal data structure type.
Object_t m_inputMetaObjects
Collection of all the managed input meta-objects.
const ::TClass * getClass() const
virtual StatusCode connectMetaObject(const std::string &key, bool silent)=0
Function setting up access to a particular metadata object.
::StatusCode StatusCode
StatusCode definition for legacy code.
void * getOutputObject(SG::sgkey_t key, const std::type_info &ti) override
Function for retrieving an output object in a non-template way.
virtual StatusCode recordAux(TVirtualManager &mgr, const std::string &key, bool metadata)=0
Record an auxiliary store into a connected output file.
const void * getInputObject(SG::sgkey_t key, const std::type_info &ti, bool silent) override
Function for retrieving an input object in a non-template way.
virtual bool hasInput() const =0
Check if an input file is connected to the object.
StatusCode record(T *obj, const std::string &key)
Add an output object to the event.
Convert a type_info to a normalized string representation (matching the names used in the root dictio...
Object_t m_outputObjects
Collection of all the managed output object.
virtual StatusCode connectObject(const std::string &key, bool silent)=0
Function setting up access to a particular object.
bool contains(const std::string &key)
Function checking if an object is available from the store.
A relatively simple transient store for objects created in analysis.
def silent(func)
Redirect stdout/err to /dev/null Useful wrapper to get rid of ROOT verbosity...
#define ATH_MSG_WARNING(x)
const boost::regex re(r_e)
virtual const void * object() const =0
Function getting a const pointer to the object being handled.
Manager for EDM objects created by ROOT.
bool transientContains(const std::string &key) const
Function checking if an object is already in memory.