Belle II Software  release-05-01-25
SensitiveBar.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2010 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Marko Petric, Marko Staric *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 
13 #include <simulation/kernel/SensitiveDetectorBase.h>
14 #include <top/geometry/TOPGeometryPar.h>
15 
16 #include <framework/datastore/StoreArray.h>
17 #include <framework/datastore/RelationArray.h>
18 #include <mdst/dataobjects/MCParticle.h>
19 #include <top/dataobjects/TOPBarHit.h>
20 
21 
22 namespace Belle2 {
27  namespace TOP {
28 
33  class SensitiveBar : public Simulation::SensitiveDetectorBase {
34 
35  public:
36 
40  SensitiveBar();
41 
47  bool step(G4Step* aStep, G4TouchableHistory*) override;
48 
53  void setReplicaDepth(int depth) {m_replicaDepth = depth;}
54 
55  private:
56 
57  int m_replicaDepth = 2;
59  std::vector<int> m_trackIDs;
65  };
66 
67  } // end of namespace top
69 } // end of namespace Belle2
70 
71 
Belle2::RelationArray
Low-level class to create/modify relations between StoreArrays.
Definition: RelationArray.h:72
Belle2::TOP::SensitiveBar::m_barHits
StoreArray< TOPBarHit > m_barHits
collection of entrance-to-bar hits
Definition: SensitiveBar.h:70
Belle2::TOP::SensitiveBar::m_replicaDepth
int m_replicaDepth
replica depth of module volume
Definition: SensitiveBar.h:65
Belle2::TOP::SensitiveBar::SensitiveBar
SensitiveBar()
Constructor.
Definition: SensitiveBar.cc:36
Belle2::TOP::SensitiveBar::m_mcParticles
StoreArray< MCParticle > m_mcParticles
collection of MC particles
Definition: SensitiveBar.h:69
Belle2::TOP::SensitiveBar::m_trackIDs
std::vector< int > m_trackIDs
track ID's
Definition: SensitiveBar.h:67
Belle2::TOP::SensitiveBar::setReplicaDepth
void setReplicaDepth(int depth)
Sets replica depth of module volume.
Definition: SensitiveBar.h:61
Belle2::TOP::SensitiveBar::m_relParticleHit
RelationArray m_relParticleHit
relations
Definition: SensitiveBar.h:71
Belle2::TOP::TOPGeometryPar::Instance
static TOPGeometryPar * Instance()
Static method to obtain the pointer to its instance.
Definition: TOPGeometryPar.cc:45
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::TOP::SensitiveBar::step
bool step(G4Step *aStep, G4TouchableHistory *) override
Process each step and fill TOPBarHits.
Definition: SensitiveBar.cc:55
Belle2::TOP::SensitiveBar::m_topgp
TOPGeometryPar * m_topgp
geometry parameters
Definition: SensitiveBar.h:66
Belle2::StoreArray< MCParticle >
Belle2::TOP::TOPGeometryPar
Singleton class for TOP Geometry Parameters.
Definition: TOPGeometryPar.h:47