ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Tracking
TrkTools
TrkRIO_OnTrackCreator
src
RIO_OnTrackErrorScalingMuonKits.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3
*/
4
#include "
RIO_OnTrackErrorScalingKit.h
"
5
#include "
MuonRIO_OnTrack/MuonEtaPhiRIO_OnTrackErrorScaling.h
"
6
7
using
CharPtr_t
=
char
*;
8
class
MuonEtaPhiRIO_OnTrackErrorScalingKit
9
:
public
RIO_OnTrackErrorScalingSpecialisedKit
<MuonEtaPhiRIO_OnTrackErrorScaling>
10
{
11
public
:
12
explicit
MuonEtaPhiRIO_OnTrackErrorScalingKit
(
const
std::string &prefix) {
13
// use C-style array of strings to satisfy the interface
14
m_names
=
new
CharPtr_t
[
MuonEtaPhiRIO_OnTrackErrorScaling::kNParamTypes
];
15
for
(
unsigned
int
idx=0; idx<
MuonEtaPhiRIO_OnTrackErrorScaling::kNParamTypes
; ++idx ) {
16
std::string tmp( prefix +
" "
+
MuonEtaPhiRIO_OnTrackErrorScaling::paramNames
()[idx] );
17
tmp.shrink_to_fit();
18
m_names
[idx]=
new
char
[ tmp.capacity() ];
19
strncpy(
m_names
[idx], tmp.c_str(), tmp.capacity() );
20
}
21
}
22
~MuonEtaPhiRIO_OnTrackErrorScalingKit
() {
23
for
(
unsigned
idx=0; idx<
MuonEtaPhiRIO_OnTrackErrorScaling::kNParamTypes
; ++idx) {
24
delete
[]
m_names
[idx];
25
}
26
delete
[]
m_names
;
27
}
28
29
MuonEtaPhiRIO_OnTrackErrorScalingKit
(
const
MuonEtaPhiRIO_OnTrackErrorScalingKit
&) =
delete
;
30
MuonEtaPhiRIO_OnTrackErrorScalingKit
&
operator=
(
const
MuonEtaPhiRIO_OnTrackErrorScalingKit
&) =
delete
;
31
32
virtual
unsigned
int
nParametres
()
const override
{
33
return
MuonEtaPhiRIO_OnTrackErrorScaling::kNParamTypes
;
34
}
35
virtual
const
char
*
const
*
paramNames
()
const override
{
36
return
m_names
;
37
}
38
private
:
39
char
**
m_names
;
40
};
41
42
#include "
MuonRIO_OnTrack/MDTRIO_OnTrackErrorScaling.h
"
43
class
MDTRIO_OnTrackErrorScalingKit
44
:
public
RIO_OnTrackErrorScalingSpecialisedKit
<MDTRIO_OnTrackErrorScaling>
45
{
46
public
:
47
MDTRIO_OnTrackErrorScalingKit
() =
default
;
48
49
~MDTRIO_OnTrackErrorScalingKit
() =
default
;
50
51
virtual
unsigned
int
nParametres
()
const override
{
52
return
MDTRIO_OnTrackErrorScaling::kNParamTypes
;
53
}
54
virtual
const
char
*
const
*
paramNames
()
const override
{
55
return
MDTRIO_OnTrackErrorScaling::paramNames
();
56
}
57
};
58
59
60
namespace
{
61
// register all kits with the help of a dummy function which sets a global anonymous bool
62
bool
registered = ( [] () ->
bool
{
63
return
64
RIO_OnTrackErrorScalingKitManager::instance
().
registerKit
(
"RPCRIO_OnTrackErrorScaling"
,
new
MuonEtaPhiRIO_OnTrackErrorScalingKit
(
"RPC"
))
65
&&
RIO_OnTrackErrorScalingKitManager::instance
().
registerKit
(
"TGCRIO_OnTrackErrorScaling"
,
new
MuonEtaPhiRIO_OnTrackErrorScalingKit
(
"TGC"
))
66
&&
RIO_OnTrackErrorScalingKitManager::instance
().
registerKit
(
"CSCRIO_OnTrackErrorScaling"
,
new
MuonEtaPhiRIO_OnTrackErrorScalingKit
(
"CSC"
))
67
&&
RIO_OnTrackErrorScalingKitManager::instance
().
registerKit
(
"MDTRIO_OnTrackErrorScaling"
,
new
MDTRIO_OnTrackErrorScalingKit
);
68
} ) ();
69
}
MDTRIO_OnTrackErrorScaling.h
MuonEtaPhiRIO_OnTrackErrorScaling.h
RIO_OnTrackErrorScalingKit.h
CharPtr_t
char * CharPtr_t
Definition
RIO_OnTrackErrorScalingMuonKits.cxx:7
KitManager< RIO_OnTrackErrorScalingKit >::instance
static KitManager< RIO_OnTrackErrorScalingKit > & instance()
Definition
KitManager.h:50
KitManager::registerKit
bool registerKit(const std::string &name, const T_KitInterface *a_kit)
Definition
KitManager.h:41
MDTRIO_OnTrackErrorScalingKit
Definition
RIO_OnTrackErrorScalingMuonKits.cxx:45
MDTRIO_OnTrackErrorScalingKit::nParametres
virtual unsigned int nParametres() const override
Definition
RIO_OnTrackErrorScalingMuonKits.cxx:51
MDTRIO_OnTrackErrorScalingKit::paramNames
virtual const char *const * paramNames() const override
Definition
RIO_OnTrackErrorScalingMuonKits.cxx:54
MDTRIO_OnTrackErrorScalingKit::~MDTRIO_OnTrackErrorScalingKit
~MDTRIO_OnTrackErrorScalingKit()=default
MDTRIO_OnTrackErrorScalingKit::MDTRIO_OnTrackErrorScalingKit
MDTRIO_OnTrackErrorScalingKit()=default
MDTRIO_OnTrackErrorScaling::kNParamTypes
@ kNParamTypes
Definition
MDTRIO_OnTrackErrorScaling.h:22
MDTRIO_OnTrackErrorScaling::paramNames
static const char *const * paramNames()
Definition
MDTRIO_OnTrackErrorScaling.h:25
MuonEtaPhiRIO_OnTrackErrorScalingKit
Definition
RIO_OnTrackErrorScalingMuonKits.cxx:10
MuonEtaPhiRIO_OnTrackErrorScalingKit::m_names
char ** m_names
Definition
RIO_OnTrackErrorScalingMuonKits.cxx:39
MuonEtaPhiRIO_OnTrackErrorScalingKit::nParametres
virtual unsigned int nParametres() const override
Definition
RIO_OnTrackErrorScalingMuonKits.cxx:32
MuonEtaPhiRIO_OnTrackErrorScalingKit::~MuonEtaPhiRIO_OnTrackErrorScalingKit
~MuonEtaPhiRIO_OnTrackErrorScalingKit()
Definition
RIO_OnTrackErrorScalingMuonKits.cxx:22
MuonEtaPhiRIO_OnTrackErrorScalingKit::paramNames
virtual const char *const * paramNames() const override
Definition
RIO_OnTrackErrorScalingMuonKits.cxx:35
MuonEtaPhiRIO_OnTrackErrorScalingKit::operator=
MuonEtaPhiRIO_OnTrackErrorScalingKit & operator=(const MuonEtaPhiRIO_OnTrackErrorScalingKit &)=delete
MuonEtaPhiRIO_OnTrackErrorScalingKit::MuonEtaPhiRIO_OnTrackErrorScalingKit
MuonEtaPhiRIO_OnTrackErrorScalingKit(const std::string &prefix)
Definition
RIO_OnTrackErrorScalingMuonKits.cxx:12
MuonEtaPhiRIO_OnTrackErrorScalingKit::MuonEtaPhiRIO_OnTrackErrorScalingKit
MuonEtaPhiRIO_OnTrackErrorScalingKit(const MuonEtaPhiRIO_OnTrackErrorScalingKit &)=delete
MuonEtaPhiRIO_OnTrackErrorScaling::kNParamTypes
@ kNParamTypes
Definition
MuonEtaPhiRIO_OnTrackErrorScaling.h:22
MuonEtaPhiRIO_OnTrackErrorScaling::paramNames
static const char *const * paramNames()
Definition
MuonEtaPhiRIO_OnTrackErrorScaling.h:25
RIO_OnTrackErrorScalingSpecialisedKit
Definition
RIO_OnTrackErrorScalingKit.h:25
Generated on
for ATLAS Offline Software by
1.17.0