|
ATLAS Offline Software
|
Go to the documentation of this file.
14 m_McEventWeightIndex(0),
15 m_eventInfoName(
"EventInfo") {
44 ATH_MSG_ERROR(
"TruthEvents could not be retrieved. Throwing exception");
45 throw std::runtime_error(
"McEventWeight ASG Tool: TruthEvents could not be retrieved");
47 if( te->
size() == 0 ) {
48 ATH_MSG_ERROR(
"TruthEvents has no events in it. Throwing exception");
49 throw std::runtime_error(
"McEventWeight ASG Tool: TruthEvents has no events in it");
52 ATH_MSG_ERROR(
"TruthEvents first event has " << te->
at(0)->weights().size() <<
" weights, but "
54 throw std::runtime_error(
"McEventWeight ASG Tool: TruthEvents has too few weights.");
70 if(
sc.isFailure() || !evtInfo) {
def retrieve(aClass, aKey=None)
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...
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
double computeWeight(const xAOD::EventInfo *) const
#define ATH_MSG_VERBOSE(x)
Class providing the definition of the 4-vector interface.
@ IS_SIMULATION
true: simulation, false: data
std::string m_eventInfoName
McEventWeight(const std::string &name)
Create a proper constructor for Athena.
ServiceHandle< StoreGateSvc > & evtStore()
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
::StatusCode StatusCode
StatusCode definition for legacy code.
Class describing the basic event information.
float mcEventWeight(size_t i=0) const
The weight of one specific MC event used in the simulation.
const T * at(size_type n) const
Access an element, as an rvalue.
virtual double getWeight() const override
returns: the value that was calculated from the usual Athena storegate
size_type size() const noexcept
Returns the number of elements in the collection.
bool eventType(EventType type) const
Check for one particular bitmask value.
unsigned int m_McEventWeightIndex