|
ATLAS Offline Software
|
Go to the documentation of this file.
7 #ifndef TRIGGER_DECISION_TOOL_Feature_H
8 #define TRIGGER_DECISION_TOOL_Feature_H
24 #include <type_traits>
40 #if !defined(XAOD_STANDALONE) && !defined(XAOD_ANALYSIS) // Full Athena
50 #if !defined(XAOD_STANDALONE) && !defined(XAOD_ANALYSIS) // Full Athena
78 #if !defined(XAOD_STANDALONE) && !defined(XAOD_ANALYSIS) // Full Athena
89 #else // AnalysisBase or AthAnalysis
90 static const bool value =
false;
97 #if !defined(XAOD_STANDALONE) && !defined(XAOD_ANALYSIS) // Full Athena
166 operator const T*()
const {
return cptr(); }
187 operator const std::string()
const {
return m_label; }
222 return a.cptr() ==
b.cptr();
229 m <<
"TE id: " <<
d.te()->getId() <<
"obj ptr: " <<
d.cptr()
ElementLink_is_not_available_for_non_storable_types type
T ValueType
$brief constructor of empty Feature
The common trigger namespace for trigger analysis tools.
Jet RoI class for analysis.
Feature(const TypelessFeature &feat, const T *const feature)
const std::string & label() const
explicit conversion to feature label
bool const RAWDATA *ch2 const
Muon RoI class for analysis.
bool empty() const
test method to check if the object is truly there
const HLT::TriggerElement * te() const
explicit conversion to TriggerElement
~Feature()
destructor taking care of removal
static const std::string & typeName()
the demangled type name of T
Feature class, holding information on Feature attached to navigation.
Features2LinkHelper< T, container_type >::type type
TriggerElement is the basic ingreedient of the interface between HLT algorithms and the navigation It...
Feature(const T *feature, const HLT::TriggerElement *te, const std::string &label="", const bool own=false, const link_type link=link_type())
constructor of valid Feature object
MsgStream & operator<<(MsgStream &m, const Trig::Feature< T > &d)
link_or_not< T, is_storable_type< T >::value >::type link_type
Features2Container< T >::type container_type
lnk_helper< CONTAINER, isCont >::type type
Feature(Feature &&) noexcept=default
Add move operator.
Em/Tau RoI class for analysis.
T * get(TKey *tobj)
get a TObject* from a TKey* (why can't a TObject be a TKey?)
Feature(const TypelessFeature &feat, const std::shared_ptr< const T > &feature)
std::shared_ptr< const T > m_owning_feature
const HLT::TriggerElement * m_te
master_search< typename EDMLIST::map, HLT::TypeInformation::get_feat, FEATURE >::result::search_result::container type
const T * cptr() const
explicit conversion to object
bool sameObject(const Feature< T > &a, const Feature< T > &b)
comarison