Belle II Software  release-05-01-25
eclCosmicECollectorModule.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2018 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Christopher Hearty hearty@physics.ubc.ca *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 
13 //Framework
14 #include <framework/database/DBObjPtr.h>
15 #include <framework/datastore/StoreArray.h>
16 
17 //Calibration
18 #include <calibration/CalibrationCollectorModule.h>
19 
20 namespace Belle2 {
26  class ECLDigit;
27  class EventMetaData;
28  class ECLCrystalCalib;
29 
33  class eclCosmicECollectorModule : public CalibrationCollectorModule {
34 
35  public:
36 
39 
41  void prepare() override;
42 
44  void collect() override;
45 
46  private:
47 
49  double m_minCrysE;
50  bool m_mockupL1;
51  double m_trigThreshold;
53  int iEvent = 0;
60  std::vector<short int> CenterCrys;
61  std::vector<short int> NeighbourA;
62  std::vector<short int> NeighbourB;
63  std::vector<int> FirstSet;
66  std::vector<float> EperCrys;
67  std::vector<bool> HitCrys;
68  std::vector<float> EnergyPerTC;
71  std::vector<short int> TCperCrys;
75  std::vector<float> ExpCosmicESame;
79  std::vector<float> ExpCosmicEDifferent;
83  std::vector<float> ElectronicsCalib;
87  std::vector<float> CosmicECalib;
88  };
90 }
Belle2::eclCosmicECollectorModule::m_ECLExpCosmicEDifferent
DBObjPtr< ECLCrystalCalib > m_ECLExpCosmicEDifferent
Expected energies from database; neighbours in different ThetaID rings.
Definition: eclCosmicECollectorModule.h:86
Belle2::eclCosmicECollectorModule::ExpCosmicEDifferent
std::vector< float > ExpCosmicEDifferent
vector obtained from DB object
Definition: eclCosmicECollectorModule.h:87
Belle2::eclCosmicECollectorModule::iEvent
int iEvent
event counter
Definition: eclCosmicECollectorModule.h:61
Belle2::eclCosmicECollectorModule::m_eclDigitArray
StoreArray< ECLDigit > m_eclDigitArray
Required input array of eclDigits.
Definition: eclCosmicECollectorModule.h:63
Belle2::eclCosmicECollectorModule::HitCrys
std::vector< bool > HitCrys
true if energy>m_minCrysE
Definition: eclCosmicECollectorModule.h:75
Belle2::eclCosmicECollectorModule::FirstSet
std::vector< int > FirstSet
First set of 3 crystals for each crystalID.
Definition: eclCosmicECollectorModule.h:71
Belle2::eclCosmicECollectorModule::m_trigThreshold
double m_trigThreshold
Minimum energy in trigger cell, if required (0.1 GeV)
Definition: eclCosmicECollectorModule.h:59
Belle2::eclCosmicECollectorModule::CenterCrys
std::vector< short int > CenterCrys
Sets of three crystals that define a useful cosmic.
Definition: eclCosmicECollectorModule.h:68
Belle2::eclCosmicECollectorModule::NeighbourB
std::vector< short int > NeighbourB
and this crystal is > threshold
Definition: eclCosmicECollectorModule.h:70
Belle2::eclCosmicECollectorModule::NeighbourA
std::vector< short int > NeighbourA
if this crystal is > threshold
Definition: eclCosmicECollectorModule.h:69
Belle2::eclCosmicECollectorModule::ExpCosmicESame
std::vector< float > ExpCosmicESame
vector obtained from DB object
Definition: eclCosmicECollectorModule.h:83
Belle2::eclCosmicECollectorModule::m_ElectronicsCalib
DBObjPtr< ECLCrystalCalib > m_ElectronicsCalib
Electronics calibration from database.
Definition: eclCosmicECollectorModule.h:90
Belle2::eclCosmicECollectorModule::collect
void collect() override
collect.
Definition: eclCosmicECollectorModule.cc:288
Belle2::DBObjPtr
Class for accessing objects in the database.
Definition: DBObjPtr.h:31
Belle2::eclCosmicECollectorModule::eclCosmicECollectorModule
eclCosmicECollectorModule()
Constructor.
Definition: eclCosmicECollectorModule.cc:44
Belle2::eclCosmicECollectorModule::prepare
void prepare() override
prepare.
Definition: eclCosmicECollectorModule.cc:59
Belle2::eclCosmicECollectorModule::m_ECLExpCosmicESame
DBObjPtr< ECLCrystalCalib > m_ECLExpCosmicESame
Expected energies from database; neighbours in the same ThetaID ring.
Definition: eclCosmicECollectorModule.h:82
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::StoreObjPtr
Type-safe access to single objects in the data store.
Definition: ParticleList.h:33
Belle2::eclCosmicECollectorModule::m_mockupL1
bool m_mockupL1
Calculate energy per trigger cell in lieu of trigger simulation (false)
Definition: eclCosmicECollectorModule.h:58
Belle2::eclCosmicECollectorModule::CosmicECalib
std::vector< float > CosmicECalib
vector obtained from DB object
Definition: eclCosmicECollectorModule.h:95
Belle2::eclCosmicECollectorModule::EperCrys
std::vector< float > EperCrys
Energy related.
Definition: eclCosmicECollectorModule.h:74
Belle2::eclCosmicECollectorModule::ElectronicsCalib
std::vector< float > ElectronicsCalib
vector obtained from DB object
Definition: eclCosmicECollectorModule.h:91
Belle2::eclCosmicECollectorModule::m_minCrysE
double m_minCrysE
Parameters to control the job.
Definition: eclCosmicECollectorModule.h:57
Belle2::eclCosmicECollectorModule::EnergyPerTC
std::vector< float > EnergyPerTC
Energy (GeV) per trigger cell.
Definition: eclCosmicECollectorModule.h:76
Belle2::StoreArray
Accessor to arrays stored in the data store.
Definition: ECLMatchingPerformanceExpertModule.h:33
Belle2::eclCosmicECollectorModule::m_CosmicECalib
DBObjPtr< ECLCrystalCalib > m_CosmicECalib
Existing single crystal calibration from DB; will be updated by CAF.
Definition: eclCosmicECollectorModule.h:94
Belle2::eclCosmicECollectorModule::m_evtMetaData
StoreObjPtr< EventMetaData > m_evtMetaData
Store array: EventMetaData.
Definition: eclCosmicECollectorModule.h:65
Belle2::eclCosmicECollectorModule::TCperCrys
std::vector< short int > TCperCrys
Trigger.
Definition: eclCosmicECollectorModule.h:79