ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
MuonSpectrometer
MuonConditions
MuonCondGeneral
MuonCondData
MuonCondData
TgcDigitJitterData.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3
*/
4
#ifndef TGCDIGITJITTERDATA_H
5
#define TGCDIGITJITTERDATA_H
6
7
#include <
GeoPrimitives/GeoPrimitives.h
>
9
#include <GaudiKernel/SystemOfUnits.h>
10
#include <
AthenaBaseComps/AthMessaging.h
>
11
#include <
AthenaKernel/BaseInfo.h
>
12
#include <
AthenaKernel/CLASS_DEF.h
>
13
#include <
AthenaKernel/CondCont.h
>
14
15
#include <vector>
16
20
namespace
CLHEP
{
21
class
HepRandomEngine;
22
}
23
24
class
TgcDigitJitterData
:
public
AthMessaging
{
25
public
:
26
TgcDigitJitterData
();
27
28
~TgcDigitJitterData
() =
default
;
29
30
double
drawJitter
(
const
Amg::Vector3D
& localDir,
31
CLHEP::HepRandomEngine* rndmEngine)
const
;
32
33
void
cacheAngleInterval
(
const
double
minAngle, std::vector<double>&& timeProbs);
34
35
StatusCode
initialize
();
36
37
private
:
38
struct
JitterBin
{
39
double
minAngle
{0.};
40
double
maxAngle
{0.};
41
bool
operator<
(
const
JitterBin
& other)
const
{
42
return
maxAngle
< other.minAngle;
43
}
44
JitterBin
(
const
double
angle
, std::vector<double>&& probs):
45
minAngle
{
angle
},
maxAngle
{
angle
},
timeProbs
{
std
::move(probs)}{}
46
std::vector<double>
timeProbs
{};
47
};
48
std::vector<JitterBin>
m_bins
{};
49
50
double
m_timeInterval
{-1.};
51
double
m_angleInterval
{-1.};
52
53
};
54
CLASS_DEF
(
TgcDigitJitterData
, 244147337 , 1 );
55
CONDCONT_DEF
(
TgcDigitJitterData
, 132172807 );
56
#endif
AthMessaging.h
CondCont.h
Hold mappings of ranges to condition objects.
CONDCONT_DEF
#define CONDCONT_DEF(...)
Definition
CondCont.h:1413
BaseInfo.h
Provide an interface for finding inheritance information at run time.
CLASS_DEF.h
macros to associate a CLID to a type
CLASS_DEF
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
Definition
Control/AthenaKernel/AthenaKernel/CLASS_DEF.h:67
GeoPrimitives.h
angle
double angle(const GeoTrf::Vector2D &a, const GeoTrf::Vector2D &b)
Definition
TRTDetectorFactory_Full.cxx:71
AthMessaging::AthMessaging
AthMessaging(IMessageSvc *msgSvc, const std::string &name)
Constructor.
Definition
AthMessaging.cxx:13
TgcDigitJitterData
Definition
TgcDigitJitterData.h:24
TgcDigitJitterData::m_timeInterval
double m_timeInterval
Definition
TgcDigitJitterData.h:50
TgcDigitJitterData::m_angleInterval
double m_angleInterval
Definition
TgcDigitJitterData.h:51
TgcDigitJitterData::drawJitter
double drawJitter(const Amg::Vector3D &localDir, CLHEP::HepRandomEngine *rndmEngine) const
Definition
TgcDigitJitterData.cxx:14
TgcDigitJitterData::initialize
StatusCode initialize()
Definition
TgcDigitJitterData.cxx:44
TgcDigitJitterData::cacheAngleInterval
void cacheAngleInterval(const double minAngle, std::vector< double > &&timeProbs)
Definition
TgcDigitJitterData.cxx:41
TgcDigitJitterData::TgcDigitJitterData
TgcDigitJitterData()
Definition
TgcDigitJitterData.cxx:11
TgcDigitJitterData::~TgcDigitJitterData
~TgcDigitJitterData()=default
TgcDigitJitterData::m_bins
std::vector< JitterBin > m_bins
Definition
TgcDigitJitterData.h:48
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition
GeoPrimitives.h:47
CLHEP
STD'S.
Definition
CaloNoiseCompCondAlg.h:57
std
STL namespace.
TgcDigitJitterData::JitterBin::maxAngle
double maxAngle
Definition
TgcDigitJitterData.h:40
TgcDigitJitterData::JitterBin::operator<
bool operator<(const JitterBin &other) const
Definition
TgcDigitJitterData.h:41
TgcDigitJitterData::JitterBin::JitterBin
JitterBin(const double angle, std::vector< double > &&probs)
Definition
TgcDigitJitterData.h:44
TgcDigitJitterData::JitterBin::timeProbs
std::vector< double > timeProbs
Definition
TgcDigitJitterData.h:46
TgcDigitJitterData::JitterBin::minAngle
double minAngle
Definition
TgcDigitJitterData.h:39
Generated on
for ATLAS Offline Software by
1.17.0