Belle II Software light-2511-gacrux
MCMatcherParticlesModule.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
13// framework - DataStore
14#include <framework/datastore/StoreArray.h>
15#include <framework/datastore/StoreObjPtr.h>
16
17// dataobjects
18#include <mdst/dataobjects/MCParticle.h>
19#include <analysis/dataobjects/Particle.h>
20#include <analysis/dataobjects/ParticleList.h>
21
22#include <string>
23
24
25namespace Belle2 {
30
78
79 public:
80
85
90 virtual void initialize() override;
91
95 virtual void event() override;
96
97 private:
98
99 std::string m_listName;
103
106
110 void setLooseMCMatch(const Particle* particle);
111
112
118 const MCParticle* mcParticle,
119 std::vector<const Particle*>& fspParticles,
120 std::vector<const MCParticle*>& missedParticles
121 );
122
128 const MCParticle* mcParticle,
129 const std::vector<const Particle*>& fspParticles
130 );
131
135 void setCCbarTagMatch(const Particle* particle);
136 };
137
138}
void setCCbarTagMatch(const Particle *particle)
Investigates the composition of the tag and remaining signal side and saves the inforamtion to extraI...
int ccbarTagPartialHelper(const MCParticle *mcParticle, std::vector< const Particle * > &fspParticles, std::vector< const MCParticle * > &missedParticles)
returns 1 if the eventParticle daughters were all caught in recParticles, 2 if partially and 0 if non...
virtual void initialize() override
Initialize the Module.
bool m_ccbarTagMatching
perform ccbar tag matching
virtual void event() override
Event processor.
StoreArray< MCParticle > m_mcparticles
the array of MCParticles.
std::string m_listName
steering variable: name of the input ParticleList
StoreArray< Particle > m_particles
the array of Particles.
bool m_looseMatching
perform loose mc matching
void setLooseMCMatch(const Particle *particle)
Finds common mother of the majority of daughters.
StoreObjPtr< ParticleList > m_plist
the input ParticleList.
A Class to store the Monte Carlo particle information.
Definition MCParticle.h:32
Module()
Constructor.
Definition Module.cc:30
Class to store reconstructed particles.
Definition Particle.h:76
Accessor to arrays stored in the data store.
Definition StoreArray.h:113
Type-safe access to single objects in the data store.
Definition StoreObjPtr.h:96
Abstract base class for different kinds of events.