Belle II Software development
BoostMCParticlesModule.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/* Basf2 headers. */
12#include <framework/core/Module.h>
13#include <framework/database/DBObjPtr.h>
14#include <framework/datastore/StoreArray.h>
15#include <framework/dbobjects/BeamParameters.h>
16#include <generators/utilities/InitialParticleGeneration.h>
17#include <mdst/dataobjects/MCParticle.h>
18
19/* ROOT headers. */
20#include <Math/LorentzRotation.h>
21
22/* C++ headers. */
23#include <string>
24
25namespace Belle2 {
34
35 public:
36
39
41 void initialize() override;
42
44 void event() override;
45
46
47 private:
48
51
53 std::string m_mcParticlesName;
54
57
59 ROOT::Math::LorentzRotation m_boost;
60
63
66
67 };
69}
Module for boosting the MCParticles from CM to LAB frame.
bool m_firstEvent
Flag for keeping track of the first call of the event() method.
DBObjPtr< BeamParameters > m_beamParameters
Beam parameters.
void initialize() override
Initialize.
std::string m_mcParticlesName
Name of the MC particles StoreArray.
InitialParticleGeneration m_initial
Initial particle generation.
StoreArray< MCParticle > m_mcParticles
MC particles.
ROOT::Math::LorentzRotation m_boost
Boost rotation.
Class for accessing objects in the database.
Definition: DBObjPtr.h:21
Base class for Modules.
Definition: Module.h:72
Accessor to arrays stored in the data store.
Definition: StoreArray.h:113
Abstract base class for different kinds of events.