Belle II Software light-2406-ragdoll
PhotonEfficiencySystematics.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
10#pragma once
11
12#include <framework/core/Module.h>
13
14#include <analysis/dbobjects/ParticleWeightingLookUpTable.h>
15#include <framework/database/DBObjPtr.h>
16#include <analysis/dataobjects/Particle.h>
17#include <analysis/dataobjects/ParticleList.h>
18#include <string>
19
20namespace Belle2 {
30
31 public:
41 WeightInfo getInfo(const Particle* particle);
42
44 virtual void beginRun() override;
48 virtual void event() override;
49
50 private:
52 std::vector<std::string> m_ParticleLists;
53 std::string m_tableName;
54 std::unique_ptr<DBObjPtr<ParticleWeightingLookUpTable>> m_ParticleWeightingLookUpTable;
60
61 }; // PhotonEfficiencySystematicsModule
62
64}; //namespace
Base class for Modules.
Definition: Module.h:72
Class to store reconstructed particles.
Definition: Particle.h:75
Adds Photon Detection Efficiency Data/MC ratios To Particle List.
std::vector< std::string > m_ParticleLists
input particle lists
virtual void event() override
Function to be executed at each event.
WeightInfo getInfo(const Particle *particle)
Get LookUp information for the particle.
std::unique_ptr< DBObjPtr< ParticleWeightingLookUpTable > > m_ParticleWeightingLookUpTable
Pointer to the table in DB.
virtual void beginRun() override
Nothing so far.
PhotonEfficiencySystematicsModule()
Constructor: Sets the description, the properties and the parameters of the module.
void addPhotonDetectionEfficiencyRatios(Particle *particle)
function to add appropriate data/mc ratio weight to a particle
std::map< std::string, double > WeightInfo
Weight information: a line from the weight lookup table.
Abstract base class for different kinds of events.
Definition: ClusterUtils.h:24