12#include <klm/bklm/geometry/GeometryPar.h>
13#include <klm/dataobjects/eklm/EKLMElementNumbers.h>
14#include <klm/dataobjects/KLMDigit.h>
15#include <klm/dataobjects/KLMElementNumbers.h>
16#include <klm/dataobjects/KLMPlaneArrayIndex.h>
17#include <klm/dbobjects/KLMChannelStatus.h>
20#include <analysis/dataobjects/ParticleList.h>
21#include <calibration/CalibrationCollectorModule.h>
22#include <framework/database/DBObjPtr.h>
23#include <framework/datastore/StoreArray.h>
24#include <framework/datastore/StoreObjPtr.h>
25#include <mdst/dataobjects/Track.h>
26#include <tracking/dataobjects/ExtHit.h>
132 void addHit(std::map<KLMPlaneNumber, struct HitData>& hitMap,
149 TH1F* allExtHitsInPlane);
Calibration collector module base class.
Class for accessing objects in the database.
Store one Ext hit as a ROOT object.
KLM digit (class representing a digitized hit in RPCs or scintillators).
Module KLMStripEfficiencyCollectorModule.
TTree * m_MatchingTree
Matching data tree.
~KLMStripEfficiencyCollectorModule()
Destructor.
const bklm::GeometryPar * m_GeometryBKLM
BKLM geometry.
void addHit(std::map< KLMPlaneNumber, struct HitData > &hitMap, KLMPlaneNumber planeGlobal, struct HitData *hitData)
Add hit to map.
int m_MatchedStrip
Matched strip.
StoreArray< KLMDigit > m_Digits
KLM digits.
DBObjPtr< KLMChannelStatus > m_ChannelStatus
Channel status.
void startRun() override
This method is called at the beginning of the run.
double m_MinimalMomentumNoOuterLayers
Minimal momentum in case there are no hits in outer layers.
TFile * m_MatchingFile
Matching data file.
bool m_RemoveUnusedMuons
Whether to remove unused muons.
const KLMElementNumbers * m_ElementNumbers
Element numbers.
const KLMPlaneArrayIndex * m_PlaneArrayIndex
Plane array index.
const EKLMElementNumbers * m_eklmElementNumbers
EKLM element numbers.
void findMatchingDigit(struct HitData *hitData)
Find matching digit.
KLMStripEfficiencyCollectorModule()
Constructor.
void collect() override
This method is called for each event.
StoreObjPtr< ParticleList > m_MuonList
Muons.
StoreArray< Track > m_tracks
Tracks.
bool collectDataTrack(const Particle *muon, TH1F *matchedDigitsInPlane, TH1F *allExtHitsInPlane)
Collect the data for one muon.
void closeRun() override
This method is called at the end of run.
bool m_IgnoreBackwardPropagation
Whether to ignore ExtHits with backward propagation.
struct HitData m_MatchingHitData
Matching hit data.
double m_AllowedDistance1D
Maximal distance in the units of strip number from ExtHit to matching KLMDigit.
void prepare() override
Initializer.
std::string m_MatchingFileName
Matching data file name.
void finish() override
Finish data processing.
StoreArray< ExtHit > m_extHits
ExtHits.
int m_MinimalMatchingDigitsOuterLayers
Minimal number of matching digits in outer layers.
std::string m_MuonListName
Muon list name.
int m_MinimalMatchingDigits
Minimal number of matching digits.
Class to store reconstructed particles.
Accessor to arrays stored in the data store.
Type-safe access to single objects in the data store.
Provides BKLM geometry parameters for simulation, reconstruction etc (from Gearbox or DataBase)
uint16_t KLMPlaneNumber
Plane number.
Abstract base class for different kinds of events.
int subdetector
Subdetector.
double localPosition
Local coordinate.
const KLMDigit * digit
Digit.
const ExtHit * hit
Extrapolation hit.