Belle II Software development
Const Class Reference

This class provides a set of constants for the framework. More...

#include <Const.h>

Classes

class  ChargedStable
 Provides a type-safe way to pass members of the chargedStableSet set. More...
 
class  Cluster
 Provides a type-safe way to pass members of the clusterSet set. More...
 
class  ClusterDetectors
 A class that defines the valid set of Cluster detectors. More...
 
class  DetectorSet
 The DetectorSet class for sets of detector IDs in the form of EDetector values. More...
 
class  ParticleSet
 A set of ParticleType objects, with defined order. More...
 
class  ParticleType
 The ParticleType class for identifying different particle types. More...
 
class  PIDDetectors
 A class that defines the valid set of PID detectors. More...
 
class  RestrictedDetectorSet
 A class for sets of detector IDs whose content is limited to restricted set of valid detector IDs. More...
 
class  TrackingDetectors
 A class that defines the valid set of tracking detectors. More...
 
class  VXDDetectors
 A class that defines the valid set of VXD detectors. More...
 

Public Types

enum  EDetector {
  invalidDetector = 0x0 ,
  PXD = 0x1 ,
  SVD = 0x2 ,
  CDC = 0x3 ,
  TOP = 0x4 ,
  ARICH = 0x5 ,
  ECL = 0x6 ,
  KLM = 0x7 ,
  BKLM = 0x100 + KLM ,
  EKLM = 0x200 + KLM ,
  IR = 0x8 ,
  TRG = 0x9 ,
  DAQ = 0xA ,
  BEAST = 0xB ,
  TEST = 0xC
}
 Enum for identifying the detector components (detector and subdetector). More...
 
enum  ERunType {
  c_Beam ,
  c_Cosmic
}
 Enum for identifying run type (beam or cosmic) More...
 
typedef RestrictedDetectorSet< VXDDetectorsVXDDetectorSet
 Typedef for set of VXD detectors.
 
typedef RestrictedDetectorSet< TrackingDetectorsTrackingDetectorSet
 Typedef for set of tracking detectors.
 
typedef RestrictedDetectorSet< PIDDetectorsPIDDetectorSet
 Typedef for set of PID detectors.
 
typedef RestrictedDetectorSet< ClusterDetectorsClusterDetectorSet
 Typedef for set of VXD detectors.
 

Static Public Member Functions

static std::string parseDetectors (EDetector det)
 Converts Const::EDetector object to string.
 

Static Public Attributes

static const DetectorSet allDetectors
 The set of all detectors.
 
static const ParticleSet chargedStableSet
 set of charged stable particles
 
static const ParticleSet clusterSet
 set of cluster particles
 
static const ParticleSet finalStateParticlesSet
 set of final set particles that can be created by the ParticleLoader
 
static const ChargedStable electron = Const::chargedStableSet.find(11)
 electron particle
 
static const ChargedStable muon = Const::chargedStableSet.find(13)
 muon particle
 
static const ChargedStable pion = Const::chargedStableSet.find(211)
 charged pion particle
 
static const ChargedStable kaon = Const::chargedStableSet.find(321)
 charged kaon particle
 
static const ChargedStable proton = Const::chargedStableSet.find(2212)
 proton particle
 
static const ChargedStable deuteron = Const::chargedStableSet.find(1000010020)
 deuteron particle
 
static const Cluster clusterphoton = Const::clusterSet.find(22)
 photon cluster
 
static const Cluster clusterKlong = Const::clusterSet.find(130)
 K^0_L cluster.
 
static const Cluster clusterelectron = Const::clusterSet.find(11)
 electron cluster

 
static const Cluster clusterpion = Const::clusterSet.find(211)
 charged hadron cluster
 
static const Cluster clustermuon = Const::clusterSet.find(13)
 muon cluster
 
static const Cluster clusterjunk = Const::clusterSet.find(9900001)
 junk cluster
 
static const ParticleType photon = Const::ParticleType(22)
 photon particle
 
static const ParticleType pi0 = Const::ParticleType(111)
 neutral pion particle
 
static const ParticleType neutron = Const::ParticleType(2112)
 neutron particle
 
static const ParticleType antiNeutron = Const::ParticleType(-2112)
 Anti-neutron particle.
 
static const ParticleType Kshort = Const::ParticleType(310)
 K^0_S particle.
 
static const ParticleType Klong = Const::ParticleType(130)
 K^0_L particle.
 
static const ParticleType Lambda = Const::ParticleType(3122)
 Lambda particle.
 
static const ParticleType antiLambda = Const::ParticleType(-3122)
 Anti-Lambda particle.
 
static const ParticleType invalidParticle = Const::ParticleType(9900000)
 Invalid particle, used internally.
 
static const ParticleType unspecifiedParticle = Const::ParticleType(9900001)
 Unspecified particle, used when no other particle type fits.
 
static const double electronMass = Const::electron.getMass()
 electron mass
 
static const double muonMass = Const::muon.getMass()
 muon mass
 
static const double pionMass = Const::pion.getMass()
 charged pion mass
 
static const double kaonMass = Const::kaon.getMass()
 charged kaon mass
 
static const double protonMass = Const::proton.getMass()
 proton mass
 
static const double deuteronMass = Const::deuteron.getMass()
 deuteron mass
 
static const double pi0Mass = Const::pi0.getMass()
 neutral pion mass
 
static const double neutronMass = Const::neutron.getMass()
 neutron mass
 
static const double K0Mass = Const::Kshort.getMass()
 neutral kaon mass
 
static const double speedOfLight = 29.9792458
 [cm/ns]
 
static const double kBoltzmann = 8.617343 * 1.0e-5 * Unit::eV / Unit::K
 Boltzmann constant in GeV/K.
 
static const double ehEnergy = 3.65 * Unit::eV
 Energy needed to create an electron-hole pair in Si at std.
 
static const double fineStrConst = 1.0 / 137.036
 The fine structure constant.
 
static const double permSi = 11.9 * 8.8542 * 1e-18 * Unit::C / Unit::V / Unit::um
 Permittivity of Silicon.
 
static const double uTherm = 0.026 * Unit::V
 Thermal Voltage at room temperature.
 
static const double eMobilitySi = 1415 * Unit::cm2 / Unit::V / Unit::s
 Electron mobility in intrinsic Silicon at room temperature.
 
static const double doubleNaN = std::numeric_limits<double>::quiet_NaN()
 quiet_NaN
 
static const float floatNaN = std::numeric_limits<float>::quiet_NaN()
 quiet_NaN
 

Private Member Functions

 Const ()=delete
 no Const instances allowed.
 
 Const (const Const &)=delete
 
Constoperator= (const Const &)=delete
 

Detailed Description

This class provides a set of constants for the framework.

This class cannot be instantiated, use the static members directly. The implementation can be found in UnitConst.cc

Definition at line 34 of file Const.h.

Member Typedef Documentation

◆ ClusterDetectorSet

Typedef for set of VXD detectors.

Definition at line 392 of file Const.h.

◆ PIDDetectorSet

Typedef for set of PID detectors.

Definition at line 379 of file Const.h.

◆ TrackingDetectorSet

Typedef for set of tracking detectors.

Definition at line 366 of file Const.h.

◆ VXDDetectorSet

Typedef for set of VXD detectors.

Definition at line 354 of file Const.h.

Member Enumeration Documentation

◆ EDetector

enum EDetector

Enum for identifying the detector components (detector and subdetector).

Edetector = subdetector * 256 + detector

Definition at line 42 of file Const.h.

42 {
43 invalidDetector = 0x0,
44 PXD = 0x1,
45 SVD = 0x2,
46 CDC = 0x3,
47 TOP = 0x4,
48 ARICH = 0x5,
49 ECL = 0x6,
50 KLM = 0x7,
51 BKLM = 0x100 + KLM,
52 EKLM = 0x200 + KLM,
53 IR = 0x8,
54 TRG = 0x9,
55 DAQ = 0xA,
56 BEAST = 0xB,
57 TEST = 0xC,
58 };

◆ ERunType

enum ERunType

Enum for identifying run type (beam or cosmic)

Definition at line 64 of file Const.h.

64 {
65 c_Beam,
66 c_Cosmic
67 };

Member Function Documentation

◆ parseDetectors()

std::string parseDetectors ( EDetector  det)
static

Converts Const::EDetector object to string.

Parameters
detConst::EDetector object to be converted to string
Returns
converted string

Definition at line 162 of file UnitConst.cc.

163{
164 if (det == Const::PXD) return "PXD";
165 else if (det == Const::SVD) return "SVD";
166 else if (det == Const::CDC) return "CDC";
167 else if (det == Const::TOP) return "TOP";
168 else if (det == Const::ARICH) return "ARICH";
169 else if (det == Const::ECL) return "ECL";
170 else if (det == Const::KLM) return "KLM";
171 else if (det == Const::BKLM) return "BKLM";
172 else if (det == Const::EKLM) return "EKLM";
173 else if (det == Const::IR) return "IR";
174 else if (det == Const::TRG) return "TRG";
175 else if (det == Const::DAQ) return "DAQ";
176 else if (det == Const::BEAST) return "BEAST";
177 else if (det == Const::TEST) return "TEST";
178 else B2FATAL("Unknown detector component: " << det);
179 return "INVALID";
180}

Member Data Documentation

◆ allDetectors

const Const::DetectorSet allDetectors
static
Initial value:
= Const::IR + Const::PXD + Const::SVD + Const::CDC +
Const::TOP + Const::ARICH + Const::ECL + Const::KLM +
Const::TRG + Const::DAQ + Const::BEAST + Const::TEST

The set of all detectors.

Definition at line 398 of file Const.h.

◆ antiLambda

const Const::ParticleType antiLambda = Const::ParticleType(-3122)
static

Anti-Lambda particle.

Definition at line 680 of file Const.h.

◆ antiNeutron

const Const::ParticleType antiNeutron = Const::ParticleType(-2112)
static

Anti-neutron particle.

Definition at line 676 of file Const.h.

◆ chargedStableSet

const Const::ParticleSet chargedStableSet
static
Initial value:
=
Const::ParticleType(11) + Const::ParticleType(13) + Const::ParticleType(211)
+ Const::ParticleType(321) + Const::ParticleType(2212) + Const::ParticleType(1000010020)

set of charged stable particles

Definition at line 618 of file Const.h.

◆ clusterelectron

const Const::Cluster clusterelectron = Const::clusterSet.find(11)
static

electron cluster

Definition at line 668 of file Const.h.

◆ clusterjunk

const Const::Cluster clusterjunk = Const::clusterSet.find(9900001)
static

junk cluster

Definition at line 671 of file Const.h.

◆ clusterKlong

const Const::Cluster clusterKlong = Const::clusterSet.find(130)
static

K^0_L cluster.

Definition at line 667 of file Const.h.

◆ clustermuon

const Const::Cluster clustermuon = Const::clusterSet.find(13)
static

muon cluster

Definition at line 670 of file Const.h.

◆ clusterphoton

const Const::Cluster clusterphoton = Const::clusterSet.find(22)
static

photon cluster

Definition at line 666 of file Const.h.

◆ clusterpion

const Const::Cluster clusterpion = Const::clusterSet.find(211)
static

charged hadron cluster

Definition at line 669 of file Const.h.

◆ clusterSet

const Const::ParticleSet clusterSet
static
Initial value:
=
Const::ParticleType(22) + Const::ParticleType(130) + Const::ParticleType(11)
+ Const::ParticleType(211) + Const::ParticleType(13) + Const::ParticleType(9900001)

set of cluster particles

Definition at line 655 of file Const.h.

◆ deuteron

const Const::ChargedStable deuteron = Const::chargedStableSet.find(1000010020)
static

deuteron particle

Definition at line 664 of file Const.h.

◆ deuteronMass

const double deuteronMass = Const::deuteron.getMass()
static

deuteron mass

Definition at line 690 of file Const.h.

◆ doubleNaN

const double doubleNaN = std::numeric_limits<double>::quiet_NaN()
static

quiet_NaN

Definition at line 703 of file Const.h.

◆ ehEnergy

const double ehEnergy = 3.65 * Unit::eV
static

Energy needed to create an electron-hole pair in Si at std.

T.

Definition at line 697 of file Const.h.

◆ electron

const Const::ChargedStable electron = Const::chargedStableSet.find(11)
static

electron particle

Definition at line 659 of file Const.h.

◆ electronMass

const double electronMass = Const::electron.getMass()
static

electron mass

Definition at line 685 of file Const.h.

◆ eMobilitySi

const double eMobilitySi = 1415 * Unit::cm2 / Unit::V / Unit::s
static

Electron mobility in intrinsic Silicon at room temperature.

Definition at line 701 of file Const.h.

◆ finalStateParticlesSet

const Const::ParticleSet finalStateParticlesSet
static
Initial value:
=
static const ParticleType neutron
neutron particle
Definition: Const.h:675
static const ParticleType Lambda
Lambda particle.
Definition: Const.h:679
static const ParticleSet chargedStableSet
set of charged stable particles
Definition: Const.h:618
static const ParticleType Klong
K^0_L particle.
Definition: Const.h:678
static const ParticleType antiLambda
Anti-Lambda particle.
Definition: Const.h:680
static const ParticleType Kshort
K^0_S particle.
Definition: Const.h:677
static const ParticleType photon
photon particle
Definition: Const.h:673

set of final set particles that can be created by the ParticleLoader

Definition at line 657 of file Const.h.

◆ fineStrConst

const double fineStrConst = 1.0 / 137.036
static

The fine structure constant.

Definition at line 698 of file Const.h.

◆ floatNaN

const float floatNaN = std::numeric_limits<float>::quiet_NaN()
static

quiet_NaN

Definition at line 704 of file Const.h.

◆ invalidParticle

const Const::ParticleType invalidParticle = Const::ParticleType(9900000)
static

Invalid particle, used internally.

Definition at line 681 of file Const.h.

◆ K0Mass

const double K0Mass = Const::Kshort.getMass()
static

neutral kaon mass

Definition at line 693 of file Const.h.

◆ kaon

const Const::ChargedStable kaon = Const::chargedStableSet.find(321)
static

charged kaon particle

Definition at line 662 of file Const.h.

◆ kaonMass

const double kaonMass = Const::kaon.getMass()
static

charged kaon mass

Definition at line 688 of file Const.h.

◆ kBoltzmann

const double kBoltzmann = 8.617343 * 1.0e-5 * Unit::eV / Unit::K
static

Boltzmann constant in GeV/K.

Definition at line 696 of file Const.h.

◆ Klong

const Const::ParticleType Klong = Const::ParticleType(130)
static

K^0_L particle.

Definition at line 678 of file Const.h.

◆ Kshort

const Const::ParticleType Kshort = Const::ParticleType(310)
static

K^0_S particle.

Definition at line 677 of file Const.h.

◆ Lambda

const Const::ParticleType Lambda = Const::ParticleType(3122)
static

Lambda particle.

Definition at line 679 of file Const.h.

◆ muon

const Const::ChargedStable muon = Const::chargedStableSet.find(13)
static

muon particle

Definition at line 660 of file Const.h.

◆ muonMass

const double muonMass = Const::muon.getMass()
static

muon mass

Definition at line 686 of file Const.h.

◆ neutron

const Const::ParticleType neutron = Const::ParticleType(2112)
static

neutron particle

Definition at line 675 of file Const.h.

◆ neutronMass

const double neutronMass = Const::neutron.getMass()
static

neutron mass

Definition at line 692 of file Const.h.

◆ permSi

const double permSi = 11.9 * 8.8542 * 1e-18 * Unit::C / Unit::V / Unit::um
static

Permittivity of Silicon.

Definition at line 699 of file Const.h.

◆ photon

const Const::ParticleType photon = Const::ParticleType(22)
static

photon particle

Definition at line 673 of file Const.h.

◆ pi0

const Const::ParticleType pi0 = Const::ParticleType(111)
static

neutral pion particle

Definition at line 674 of file Const.h.

◆ pi0Mass

const double pi0Mass = Const::pi0.getMass()
static

neutral pion mass

Definition at line 691 of file Const.h.

◆ pion

const Const::ChargedStable pion = Const::chargedStableSet.find(211)
static

charged pion particle

Definition at line 661 of file Const.h.

◆ pionMass

const double pionMass = Const::pion.getMass()
static

charged pion mass

Definition at line 687 of file Const.h.

◆ proton

const Const::ChargedStable proton = Const::chargedStableSet.find(2212)
static

proton particle

Definition at line 663 of file Const.h.

◆ protonMass

const double protonMass = Const::proton.getMass()
static

proton mass

Definition at line 689 of file Const.h.

◆ speedOfLight

const double speedOfLight = 29.9792458
static

[cm/ns]

Definition at line 695 of file Const.h.

◆ unspecifiedParticle

const Const::ParticleType unspecifiedParticle = Const::ParticleType(9900001)
static

Unspecified particle, used when no other particle type fits.

(no valid PDG code, but different from invalidParticle)

Definition at line 683 of file Const.h.

◆ uTherm

const double uTherm = 0.026 * Unit::V
static

Thermal Voltage at room temperature.

Definition at line 700 of file Const.h.


The documentation for this class was generated from the following files: