Belle II Software  release-05-02-19
InclusiveParticleCheckerModule.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2018 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Martin Ritter *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 
13 #include <framework/core/Module.h>
14 #include <framework/datastore/StoreArray.h>
15 #include <mdst/dataobjects/MCParticle.h>
16 #include <boost/variant.hpp>
17 #include <set>
18 
19 namespace Belle2 {
35  class InclusiveParticleCheckerModule : public Module {
36 
37  public:
38 
44 
46  virtual void initialize() override;
48  virtual void event() override;
49  private:
51  std::vector<boost::variant<std::string, int>> m_particles;
53  bool m_includeConjugates{true};
57  std::set<int> m_particleCodes;
58  };
60 }
Belle2::InclusiveParticleCheckerModule::m_particleCodes
std::set< int > m_particleCodes
Set of PDG codes to look for.
Definition: InclusiveParticleCheckerModule.h:65
Belle2::InclusiveParticleCheckerModule::InclusiveParticleCheckerModule
InclusiveParticleCheckerModule()
Constructor: Sets the description, the properties and the parameters of the module.
Definition: InclusiveParticleCheckerModule.cc:50
Belle2::InclusiveParticleCheckerModule::m_mcParticles
StoreArray< MCParticle > m_mcParticles
List of generated particles.
Definition: InclusiveParticleCheckerModule.h:63
Belle2::InclusiveParticleCheckerModule::event
virtual void event() override
Look for the particle and set the return type.
Definition: InclusiveParticleCheckerModule.cc:99
Belle2::InclusiveParticleCheckerModule::m_includeConjugates
bool m_includeConjugates
If true require either the particle or its charge conjugate.
Definition: InclusiveParticleCheckerModule.h:61
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::InclusiveParticleCheckerModule::m_particles
std::vector< boost::variant< std::string, int > > m_particles
Name or PDG string of the particle to look for.
Definition: InclusiveParticleCheckerModule.h:59
Belle2::InclusiveParticleCheckerModule::initialize
virtual void initialize() override
Register input and output data.
Definition: InclusiveParticleCheckerModule.cc:78
Belle2::StoreArray< MCParticle >