Belle II Software  release-05-01-25
SVDNeutronFluxEvent.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2010-2014 Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Peter Kvasnicka *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 #ifndef SVD_DATAOBJECTS_NEUTRONFLUXEVENT_H
13 #define SVD_DATAOBJECTS_NEUTRONFLUXEVENT_H
14 
15 #include <framework/datastore/RelationsObject.h>
16 #include <algorithm>
17 
18 namespace Belle2 {
31 
32  public:
33 
36  m_pdg(0), m_time(0.0), m_u(0.0), m_v(0.0),
37  m_kineticEnergy(0.0), m_stepLength(0.0), m_nielFactor(0.0), m_rawFlux(0.0),
38  m_nielFlux(0.0)
39  {
40  std::fill_n(m_globalPos, 3, 0.0);
41  std::fill_n(m_globalMom, 3, 0.0);
42  }
43 
60  SVDNeutronFluxEvent(unsigned short layer, unsigned short ladder, unsigned short sensor,
61  int pdg, float time, float u, float v,
62  const float* globalPos, const float* globalMom, float kineticEnergy,
63  float stepLength, float nielFactor, float rawFlux, float nielFlux):
64  m_layer(layer), m_ladder(ladder), m_sensor(sensor),
65  m_pdg(pdg), m_time(time), m_u(u), m_v(v), m_kineticEnergy(kineticEnergy),
66  m_stepLength(stepLength), m_nielFactor(nielFactor), m_rawFlux(rawFlux),
67  m_nielFlux(nielFlux)
68  {
69  std::copy_n(globalPos, 3, m_globalPos);
70  std::copy_n(globalMom, 3, m_globalMom);
71  }
72 
73  unsigned short m_layer;
74  unsigned short m_ladder;
75  unsigned short m_sensor;
76  int m_pdg;
77  float m_time;
78  float m_u;
79  float m_v;
80  float m_globalPos[3];
81  float m_globalMom[3];
83  float m_stepLength;
84  float m_nielFactor;
85  float m_rawFlux;
86  float m_nielFlux;
89  };
91 } // end namespace Belle2
92 
93 #endif
Belle2::SVDNeutronFluxEvent::m_rawFlux
float m_rawFlux
Raw particle flux.
Definition: SVDNeutronFluxEvent.h:85
Belle2::SVDNeutronFluxEvent::m_pdg
int m_pdg
PDG number of generating particle.
Definition: SVDNeutronFluxEvent.h:76
Belle2::SVDNeutronFluxEvent
Class SVDNeutronFluxEvent: SVDTrueHit data container for background studies.
Definition: SVDNeutronFluxEvent.h:30
Belle2::SVDNeutronFluxEvent::m_ladder
unsigned short m_ladder
ladder number
Definition: SVDNeutronFluxEvent.h:74
Belle2::SVDNeutronFluxEvent::SVDNeutronFluxEvent
SVDNeutronFluxEvent(unsigned short layer, unsigned short ladder, unsigned short sensor, int pdg, float time, float u, float v, const float *globalPos, const float *globalMom, float kineticEnergy, float stepLength, float nielFactor, float rawFlux, float nielFlux)
Standard constructor.
Definition: SVDNeutronFluxEvent.h:60
Belle2::SVDNeutronFluxEvent::m_kineticEnergy
float m_kineticEnergy
kinetic energy of the particle
Definition: SVDNeutronFluxEvent.h:82
Belle2::RelationsInterface::ClassDef
ClassDef(RelationsInterface, 0)
defines interface for accessing relations of objects in StoreArray.
Belle2::SVDNeutronFluxEvent::m_sensor
unsigned short m_sensor
sensor number
Definition: SVDNeutronFluxEvent.h:75
Belle2::SVDNeutronFluxEvent::m_v
float m_v
local v-coordinate of particle crossing
Definition: SVDNeutronFluxEvent.h:79
Belle2::SVDNeutronFluxEvent::m_globalPos
float m_globalPos[3]
global (x,y,z) of particle crossing
Definition: SVDNeutronFluxEvent.h:80
Belle2::SVDNeutronFluxEvent::m_globalMom
float m_globalMom[3]
global (px, py, pz) of the particle
Definition: SVDNeutronFluxEvent.h:81
Belle2::SVDNeutronFluxEvent::m_u
float m_u
local u-coordinate of particle crossing
Definition: SVDNeutronFluxEvent.h:78
Belle2::SVDNeutronFluxEvent::m_stepLength
float m_stepLength
step length
Definition: SVDNeutronFluxEvent.h:83
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::SVDNeutronFluxEvent::m_nielFlux
float m_nielFlux
NIEL-corrected flux.
Definition: SVDNeutronFluxEvent.h:86
Belle2::SVDNeutronFluxEvent::m_nielFactor
float m_nielFactor
NIEL scaling factor for the particle and kinetic energy.
Definition: SVDNeutronFluxEvent.h:84
Belle2::SVDNeutronFluxEvent::SVDNeutronFluxEvent
SVDNeutronFluxEvent()
default constructor for ROOT
Definition: SVDNeutronFluxEvent.h:35
Belle2::SVDNeutronFluxEvent::m_layer
unsigned short m_layer
layer number
Definition: SVDNeutronFluxEvent.h:73
Belle2::RelationsInterface
Defines interface for accessing relations of objects in StoreArray.
Definition: RelationsObject.h:102
Belle2::SVDNeutronFluxEvent::m_time
float m_time
time of particle crossing
Definition: SVDNeutronFluxEvent.h:77