44 ATH_MSG_WARNING(
"The SUSY_procID decoration requested is not available! You need to run SUSYSignalTagger beforehand.");
51 if(
evtStore()->retrieve( te,
"TruthEvents" ).isFailure() ) {
52 ATH_MSG_ERROR(
"TruthEvents could not be retrieved. Throwing exception");
53 throw std::runtime_error(
"SUSYIDWeight ASG Tool: TruthEvents could not be retrieved");
55 if( te->
size() == 0 ) {
56 ATH_MSG_ERROR(
"TruthEvents has no events in it. Throwing exception");
57 throw std::runtime_error(
"SUSYIDWeight ASG Tool: TruthEvents has no events in it");
59 const double weight = te->
at(0)->weights()[0];
60 ATH_MSG_DEBUG (
"Got weight in SUSYIDWeight::computeWeight() = " << weight <<
".");
65 ATH_MSG_DEBUG (
"Got weight in SUSYIDWeight::computeWeight() = " << weight <<
".");
73 if(
sc.isFailure() || !evtInfo) {
79 ATH_MSG_VERBOSE (
" " << name() <<
" returning weight= " << weight <<
".");
#define ATH_MSG_VERBOSE(x)
#define ATH_MSG_WARNING(x)
static const SG::AuxElement::Accessor< int > acc_procID("SUSY_procID")
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)
ServiceHandle< StoreGateSvc > & evtStore()
const T * at(size_type n) const
Access an element, as an rvalue.
size_type size() const noexcept
Returns the number of elements in the collection.
SG::Accessor< T, ALLOC > Accessor
std::string m_eventInfoName
double computeWeight(const xAOD::EventInfo *) const
virtual double getWeight() const override
returns: the value that was calculated from the usual Athena storegate
SUSYIDWeight(const std::string &name)
Create a proper constructor for Athena.
virtual double evaluate(const xAOD::IParticle *part) const override
returns: the value that was calculated from the xAOD::IParticle (composite built event object for ins...
bool eventType(EventType type) const
Check for one particular bitmask value.
@ IS_SIMULATION
true: simulation, false: data
float mcEventWeight(size_t i=0) const
The weight of one specific MC event used in the simulation.
Class providing the definition of the 4-vector interface.
TruthEventContainer_v1 TruthEventContainer
Declare the latest version of the truth event container.
EventInfo_v1 EventInfo
Definition of the latest event info version.