ATLAS Offline Software
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 */
6 
7 using CharPtr_t = char *;
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
15  for (unsigned int idx=0; idx< MuonEtaPhiRIO_OnTrackErrorScaling::kNParamTypes; ++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  }
24  delete [] m_names[idx];
25  }
26  delete [] m_names;
27  }
28 
31 
32  virtual unsigned int nParametres() const override {
34  }
35  virtual const char* const* paramNames() const override {
36  return m_names;
37  }
38 private:
39  char **m_names;
40 };
41 
44  : public RIO_OnTrackErrorScalingSpecialisedKit<MDTRIO_OnTrackErrorScaling>
45 {
46 public:
48 
50 
51  virtual unsigned int nParametres() const override {
53  }
54  virtual const char* const* paramNames() const override {
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
MDTRIO_OnTrackErrorScalingKit::~MDTRIO_OnTrackErrorScalingKit
~MDTRIO_OnTrackErrorScalingKit()=default
CharPtr_t
char * CharPtr_t
Definition: RIO_OnTrackErrorScalingMuonKits.cxx:7
MDTRIO_OnTrackErrorScaling::paramNames
static const char *const * paramNames()
Definition: MDTRIO_OnTrackErrorScaling.h:25
MuonEtaPhiRIO_OnTrackErrorScalingKit::paramNames
virtual const char *const * paramNames() const override
Definition: RIO_OnTrackErrorScalingMuonKits.cxx:35
MDTRIO_OnTrackErrorScaling::kNParamTypes
@ kNParamTypes
Definition: MDTRIO_OnTrackErrorScaling.h:22
MDTRIO_OnTrackErrorScalingKit::MDTRIO_OnTrackErrorScalingKit
MDTRIO_OnTrackErrorScalingKit()=default
MDTRIO_OnTrackErrorScalingKit::paramNames
virtual const char *const * paramNames() const override
Definition: RIO_OnTrackErrorScalingMuonKits.cxx:54
MDTRIO_OnTrackErrorScalingKit::nParametres
virtual unsigned int nParametres() const override
Definition: RIO_OnTrackErrorScalingMuonKits.cxx:51
MuonEtaPhiRIO_OnTrackErrorScaling.h
MuonEtaPhiRIO_OnTrackErrorScalingKit::MuonEtaPhiRIO_OnTrackErrorScalingKit
MuonEtaPhiRIO_OnTrackErrorScalingKit(const MuonEtaPhiRIO_OnTrackErrorScalingKit &)=delete
MuonEtaPhiRIO_OnTrackErrorScalingKit
Definition: RIO_OnTrackErrorScalingMuonKits.cxx:10
RIO_OnTrackErrorScalingSpecialisedKit
Definition: RIO_OnTrackErrorScalingKit.h:25
KitManager::instance
static KitManager< T_KitInterface > & instance()
Definition: KitManager.h:50
checkCorrelInHIST.prefix
dictionary prefix
Definition: checkCorrelInHIST.py:391
MuonEtaPhiRIO_OnTrackErrorScalingKit::~MuonEtaPhiRIO_OnTrackErrorScalingKit
~MuonEtaPhiRIO_OnTrackErrorScalingKit()
Definition: RIO_OnTrackErrorScalingMuonKits.cxx:22
DeMoUpdate.tmp
string tmp
Definition: DeMoUpdate.py:1167
RIO_OnTrackErrorScalingKit.h
MuonEtaPhiRIO_OnTrackErrorScaling::kNParamTypes
@ kNParamTypes
Definition: MuonEtaPhiRIO_OnTrackErrorScaling.h:22
MuonEtaPhiRIO_OnTrackErrorScalingKit::operator=
MuonEtaPhiRIO_OnTrackErrorScalingKit & operator=(const MuonEtaPhiRIO_OnTrackErrorScalingKit &)=delete
MuonEtaPhiRIO_OnTrackErrorScaling::paramNames
static const char *const * paramNames()
Definition: MuonEtaPhiRIO_OnTrackErrorScaling.h:25
MDTRIO_OnTrackErrorScalingKit
Definition: RIO_OnTrackErrorScalingMuonKits.cxx:45
LArNewCalib_DelayDump_OFC_Cali.idx
idx
Definition: LArNewCalib_DelayDump_OFC_Cali.py:69
MuonEtaPhiRIO_OnTrackErrorScalingKit::MuonEtaPhiRIO_OnTrackErrorScalingKit
MuonEtaPhiRIO_OnTrackErrorScalingKit(const std::string &prefix)
Definition: RIO_OnTrackErrorScalingMuonKits.cxx:12
MuonEtaPhiRIO_OnTrackErrorScalingKit::nParametres
virtual unsigned int nParametres() const override
Definition: RIO_OnTrackErrorScalingMuonKits.cxx:32
MuonEtaPhiRIO_OnTrackErrorScalingKit::m_names
char ** m_names
Definition: RIO_OnTrackErrorScalingMuonKits.cxx:39