|
ATLAS Offline Software
|
Go to the documentation of this file.
7 #ifndef TRIGGER_DECISION_TOOL_Combination_H
8 #define TRIGGER_DECISION_TOOL_Combination_H
32 #if !defined(XAOD_STANDALONE) && !defined(XAOD_ANALYSIS) // Full athena
38 #include "boost/container_hash/hash_fwd.hpp"
44 class CacheGlobalMemory;
81 std::vector<Trig::Feature<T> >
get(
const std::string&
label =
"",
unsigned int condition=TrigDefs::Physics,
const std::string&
teName =
"")
const;
84 template<
typename CONTAINER>
using ELEMENT_OF =
typename CONTAINER::base_value_type;
93 return FeatureAccessImpl::typedGet<xAOD::IParticle,xAOD::IParticleContainer,xAOD::IParticleContainer>(features,
102 template<
typename CONTAINER>
111 template<
typename CONTAINER>
114 return FeatureAccessImpl::typedGet<CONTAINER,CONTAINER,CONTAINER>(features,
navigation(),
m_cgm->
store());
120 template<
typename CONTAINER>
123 return FeatureAccessImpl::typedGet<ELEMENT_OF<CONTAINER>,CONTAINER,CONTAINER>(features,
navigation(),
m_cgm->
store());
141 const std::vector<const HLT::TriggerElement*>&
tes()
const {
return m_tes; }
156 friend class ::HltNaviChecker;
163 std::vector<const HLT::TriggerElement*>
m_tes;
172 std::vector<Feature<T> >
data;
174 #if !defined(XAOD_STANDALONE) && !defined(XAOD_ANALYSIS) // Full athena
183 std::cerr <<
"WARNING: Trig::Combination::get is only available in Athena proper" << std::endl;
197 return boost::hash_range(comb.
tes().begin(), comb.
tes().end());
char data[hepevt_bytes_allocation_ATLAS]
unsigned int size() const
Size of combination.
const Trig::CacheGlobalMemory * m_cgm
std::vector< Identifier > ID
The common trigger namespace for trigger analysis tools.
void deleteAtTheEndOfEvent(T t) const
void collect(const HLT::TriggerElement *te, std::vector< Trig::Feature< T > > &data, const std::string &label, unsigned int condition, const std::string &teName) const
Method used to get objects.
bool operator<(const Combination &other) const
typename CONTAINER::base_value_type ELEMENT_OF
const HLT::TrigNavStructure * navigation() const
std::vector< Feature< ELEMENT_OF< CONTAINER > > > flattenedContainerFeature(const std::string &label="", unsigned int condition=TrigDefs::Physics, const std::string &teName="") const
get container type features flattened as Features (those attached to TE as container of a trigger typ...
std::ostream & operator<<(std::ostream &, const Trig::TypelessFeature &)
const asg::EventStoreType * store() const
Get the event store that the object is using.
TriggerElement is the basic ingreedient of the interface between HLT algorithms and the navigation It...
Default, invalid implementation of ClassID_traits.
std::size_t operator()(const Trig::Combination &comb) const
std::vector< Feature< ELEMENT_OF< CONTAINER > > > elementFeature(const std::string &label="", unsigned int condition=TrigDefs::Physics, const std::string &teName="") const
get element type features (those attached to TE as single instance of a trigger type)
std::vector< const HLT::TriggerElement * > m_tes
std::vector< Trig::TypelessFeature > typelessGet(HLT::class_id_type clid, const std::string &label="", unsigned int condition=TrigDefs::Physics, const std::string &teName="") const
Typeless version of get method.
const std::vector< const HLT::TriggerElement * > & tes() const
trigger elements in the combination can be used directly with ancestor method
bool active() const
Returns the state of the combination i.e.
std::vector< Feature< CONTAINER > > containerFeature(const std::string &label="", unsigned int condition=TrigDefs::Physics, const std::string &teName="") const
get container type features (those attached to TE as container of a trigger type)
std::vector< Trig::Feature< xAOD::IParticle > > getIParticle(HLT::class_id_type clid, const std::string &container_name, const std::string &label="", unsigned int condition=TrigDefs::Physics, const std::string &teName="") const
Experimental flattened get for IParticle types.
std::vector< Trig::Feature< T > > get(const std::string &label="", unsigned int condition=TrigDefs::Physics, const std::string &teName="") const
Method used to get objects.
bool operator==(const Combination &other) const