17#include "TMethodCall.h"
30 (
const std::string&
type,
31 const std::string& name,
32 const IInterface* parent)
69 TClass* cls = gROOT->GetClass (
m_typename.c_str());
70 cls->GetBaseClass (
"SG::AuxElement");
76 TClass* cls = gROOT->GetClass (
m_typename.c_str());
77 TMethodCall meth (cls,
"initHelper",
"");
83 TClass* cls = gROOT->GetClass (
m_typename.c_str());
84 TMethodCall meth (cls,
"dvlinfo",
"");
92 <<
"Can't find DataVector/DataList info for class " <<
m_typename;
93 return StatusCode::FAILURE;
110 return StatusCode::SUCCESS;
121 return m_info->elt_tinfo();
136 if (allowMissing && p0 == 0) {
138 return StatusCode::SUCCESS;
153 return StatusCode::SUCCESS;
157 return StatusCode::FAILURE;
204 if (info)
return info;
212 std::vector<const std::type_info*> bases = bib->
get_ti_bases();
213 for (
size_t i = 0; i < bases.size(); i++) {
219 if (bib && bib->
is_base (info->tinfo()))
#define REPORT_MESSAGE(LVL)
Report a message.
#define CHECK(...)
Evaluate an expression and check for errors.
Holder to implement conversion copies for DataVector/DataList.
#define SGGETTERIMPL_PROPS
Use this macro in the constructor of the derived AlgTool class.
Define macros for attributes used to control the static checker.
#define ATLAS_THREAD_SAFE
std::string m_typename
Property: Name of the type of the object being retrieved.
SGKeyResolver m_resolver
Helper: Resolve the SG key to use.
SGGetterImpl(const std::string &name, ServiceHandle< StoreGateSvc > &sg)
Constructor.
StatusCode initializeImpl()
Initialize this mixin class.
virtual const void * getUntyped(bool allowMissing=false)
Return the target object.
CLID clid() const
Return the class ID being read by this tool.
virtual const std::type_info & typeinfo() const
Return the type of object retrieved by this tool.
static DVLInfoBase * find(const std::type_info &tinfo)
Find the DVLInfo for the container tinfo.
const std::type_info & tinfo() const
Return the type_info for the container.
Manage index tracking and synchronization of auxiliary data.
void setStore(SG::IAuxStore *store)
Set the store associated with this object.
bool trackIndices() const
Return true if index tracking is enabled for this container.
const SG::IConstAuxStore * getConstStore() const
Return the current store, as a const interface.
The non-template portion of the BaseInfo implementation.
std::vector< const std::type_info * > get_ti_bases() const
Return the type_info's of all known bases of T.
static const BaseInfoBase * find(CLID clid)
Find the BaseInfoBase instance for clid.
bool is_base(CLID clid) const
Return true if clid is the ID of a class that is known to be a base of T.
Interface for const operations on an auxiliary store.
Block filler tool for noisy FEB information.