Belle II Software light-2406-ragdoll
ParticleCombinerFromMCModule.h
1/**************************************************************************
2 * basf2 (Belle II Analysis Software Framework) *
3 * Author: The Belle II Collaboration *
4 * *
5 * See git log for contributors and copyright holders. *
6 * This file is licensed under LGPL-3.0, see LICENSE.md. *
7 **************************************************************************/
8
9#pragma once
10
11#include <framework/core/Module.h>
12#include <framework/datastore/StoreArray.h>
13
14// dataobjects
15#include <analysis/dataobjects/Particle.h>
16
17#include <analysis/ParticleCombiner/ParticleCombiner.h>
18
19#include <analysis/DecayDescriptor/DecayDescriptor.h>
20
21#include <string>
22#include <vector>
23
24namespace Belle2 {
29 class Particle;
30
35
36 public:
37
42
47 virtual void initialize() override;
48
52 virtual void event() override;
53
58 void registerParticleRecursively(const DecayDescriptor& decaydescriptor);
59
64 void combineRecursively(const DecayDescriptor& decaydescriptor);
65
66
67 private:
68
71 std::string m_decayString;
73 std::unique_ptr<ParticleGenerator> m_generator;
75 std::string m_listName;
79 std::vector<std::string> m_vector_listName;
81 std::string m_cutParameter;
83 std::unique_ptr<Variable::Cut> m_cut;
89 };
90
92} // Belle2 namespace
93
The DecayDescriptor stores information about a decay tree or parts of a decay tree.
Base class for Modules.
Definition: Module.h:72
void combineRecursively(const DecayDescriptor &decaydescriptor)
Combine particles which have (sub-)decay recursively.
virtual void initialize() override
Initialize the Module.
virtual void event() override
Event processor.
void registerParticleRecursively(const DecayDescriptor &decaydescriptor)
Register particles which have (sub-)decay recursively.
std::string m_decayString
Input DecayString specifying the decay being reconstructed.
std::string m_listName
output particle list name
StoreArray< Particle > m_particles
StoreArray of Particles.
std::unique_ptr< ParticleGenerator > m_generator
Generates the combinations.
std::unique_ptr< Variable::Cut > m_cut
cut object which performs the cuts
int m_decayModeID
user specified decay mode identifier
DecayDescriptor m_decaydescriptor
Decay descriptor of the decay being reconstructed.
bool m_writeOut
toggle output particle list btw.
std::vector< std::string > m_vector_listName
vector of output particle list name
bool m_chargeConjugation
boolean to control whether charge conjugated decay should be reconstructed as well
Accessor to arrays stored in the data store.
Definition: StoreArray.h:113
Abstract base class for different kinds of events.
Definition: ClusterUtils.h:24