ATLAS Offline Software
Classes | Public Member Functions | Private Attributes | List of all members
MuonGM::DblQ00IAcsc Class Reference

#include <DblQ00IAcsc.h>

Collaboration diagram for MuonGM::DblQ00IAcsc:

Classes

struct  IACSC
 

Public Member Functions

 DblQ00IAcsc ()=default
 
 ~DblQ00IAcsc ()=default
 
 DblQ00IAcsc (IRDBAccessSvc *pAccessSvc, const std::string &GeoTag="", const std::string &GeoNode="")
 
 DblQ00IAcsc (const std::string &asciiFileName)
 
DblQ00IAcscoperator= (const DblQ00IAcsc &right)=delete
 
 DblQ00IAcsc (const DblQ00IAcsc &)=delete
 
void WriteIAcscToAsciiFile (const std::string &filename)
 
const IACSCdata () const
 
unsigned int size () const
 
std::string getName () const
 
std::string getDirName () const
 
std::string getObjName () const
 

Private Attributes

std::vector< IACSCm_d {}
 
unsigned int m_nObj {0}
 

Detailed Description

Definition at line 24 of file DblQ00IAcsc.h.

Constructor & Destructor Documentation

◆ DblQ00IAcsc() [1/4]

MuonGM::DblQ00IAcsc::DblQ00IAcsc ( )
default

◆ ~DblQ00IAcsc()

MuonGM::DblQ00IAcsc::~DblQ00IAcsc ( )
default

◆ DblQ00IAcsc() [2/4]

MuonGM::DblQ00IAcsc::DblQ00IAcsc ( IRDBAccessSvc pAccessSvc,
const std::string &  GeoTag = "",
const std::string &  GeoNode = "" 
)

Definition at line 25 of file DblQ00IAcsc.cxx.

26  {
27 
28  m_nObj = iacsc->size();
29  m_d.resize (m_nObj);
30  if (m_nObj == 0) std::cerr<<"NO IAcsc banks in the MuonDD Database"<<std::endl;
31 
32  for (size_t i =0; i<iacsc->size(); ++i) {
33 
34  m_d[i].version = (*iacsc)[i]->getInt("VERS");
35  m_d[i].line = i;
36  m_d[i].jff = (*iacsc)[i]->getInt("JFF");
37  m_d[i].jzz = (*iacsc)[i]->getInt("JZZ");
38  m_d[i].job = (*iacsc)[i]->getInt("JOB");
39  m_d[i].wireLayer = (*iacsc)[i]->getInt("JLAY");
40  m_d[i].tras = 10.*(*iacsc)[i]->getFloat("TRAS"); // I lines in mm, but ISZT in cm
41  m_d[i].traz = 10.*(*iacsc)[i]->getFloat("TRAZ"); // I lines in mm, but ISZT in cm
42  m_d[i].trat = 10.*(*iacsc)[i]->getFloat("TRAT"); // I lines in mm, but ISZT in cm
43  m_d[i].rots = (*iacsc)[i]->getFloat("ROTS");
44  m_d[i].rotz = (*iacsc)[i]->getFloat("ROTZ");
45  m_d[i].rott = (*iacsc)[i]->getFloat("ROTT");
46  m_d[i].type = (*iacsc)[i]->getString("TYP");
47  }
48  }
49  else {
50  std::cerr<<"NO IAcsc banks in the MuonDD Database"<<std::endl;
51  }
52 }
53 
54 
55 DblQ00IAcsc::DblQ00IAcsc(const std::string& asciiFileName) {

◆ DblQ00IAcsc() [3/4]

MuonGM::DblQ00IAcsc::DblQ00IAcsc ( const std::string &  asciiFileName)

Definition at line 58 of file DblQ00IAcsc.cxx.

61  : "<<asciiFileName<<std::endl;
62 
63 
64  m_nObj = std::count(std::istreambuf_iterator<char>(iacscFile),
65  std::istreambuf_iterator<char>(),'\n');
66  std::cout<<"Number of lines in the CSc Internal A-line file <"<<asciiFileName<<"> is "<< m_nObj <<std::endl;
67 
68 
69  m_d.resize (m_nObj);
70  if (m_nObj == 0) std::cerr<<"NO IAcsc banks in "<<asciiFileName<<std::endl;
71 
72  int j=0;
73 
74  // close and reopen file for input
75  iacscFile.close();
76  iacscFile.open(asciiFileName.c_str());
77 
78  char AlineMarker;
79  while ( iacscFile
80  >> AlineMarker
81  >> m_d[j].type
82  >> m_d[j].jff
83  >> m_d[j].jzz
84  >> m_d[j].job
85  >> m_d[j].wireLayer
86  >> m_d[j].tras
87  >> m_d[j].traz
88  >> m_d[j].trat
89  >> m_d[j].rots
90  >> m_d[j].rotz
91  >> m_d[j].rott
92  )
93  {
94  std::cout<<" IAcsc:: line "<<j+1<<" --- jtyp, jff, jzz, job, w-layer "<<m_d[j].type<<" "
95  <<m_d[j].jff<<" "<<m_d[j].jzz <<" "
96  <<m_d[j].job<<" "<<m_d[j].wireLayer <<std::endl;
97  m_d[j].line = j+1;
98  j++;
99  }
100 
101 
102  if (j!=(int)m_nObj) {
103  std::cerr<<"problem with DblQ00IAcsc: j="<<j<<" m_nObj="<<(int)m_nObj<<std::endl;
104  }
105 
106 }
107 
108 void DblQ00IAcsc::WriteIAcscToAsciiFile(const std::string& filename)
109 {

◆ DblQ00IAcsc() [4/4]

MuonGM::DblQ00IAcsc::DblQ00IAcsc ( const DblQ00IAcsc )
delete

Member Function Documentation

◆ data()

const IACSC* MuonGM::DblQ00IAcsc::data ( ) const
inline

Definition at line 55 of file DblQ00IAcsc.h.

55 { return m_d.data(); };

◆ getDirName()

std::string MuonGM::DblQ00IAcsc::getDirName ( ) const
inline

Definition at line 58 of file DblQ00IAcsc.h.

58 { return "DblQ00"; };

◆ getName()

std::string MuonGM::DblQ00IAcsc::getName ( ) const
inline

Definition at line 57 of file DblQ00IAcsc.h.

57 { return "IACSC"; };

◆ getObjName()

std::string MuonGM::DblQ00IAcsc::getObjName ( ) const
inline

Definition at line 59 of file DblQ00IAcsc.h.

59 { return "IACSC"; };

◆ operator=()

DblQ00IAcsc& MuonGM::DblQ00IAcsc::operator= ( const DblQ00IAcsc right)
delete

◆ size()

unsigned int MuonGM::DblQ00IAcsc::size ( ) const
inline

Definition at line 56 of file DblQ00IAcsc.h.

56 { return m_nObj; };

◆ WriteIAcscToAsciiFile()

void MuonGM::DblQ00IAcsc::WriteIAcscToAsciiFile ( const std::string &  filename)

Definition at line 111 of file DblQ00IAcsc.cxx.

112  {
113  iacscFile
114  <<"A "
115  << m_d[j].type <<" "
116  << m_d[j].jff <<" "
117  << m_d[j].jzz <<" "
118  << m_d[j].job <<" "
119  << m_d[j].wireLayer <<" "
120  << m_d[j].tras <<" " // here mm !
121  << m_d[j].traz <<" " // here mm !
122  << m_d[j].trat <<" " // here mm !
123  << m_d[j].rots <<" "
124  << m_d[j].rotz <<" "
125  << m_d[j].rott <<" "
126  << "\n";
127  }
128  iacscFile.close();
129 }
130 
131 } // end of namespace MuonGM

Member Data Documentation

◆ m_d

std::vector<IACSC> MuonGM::DblQ00IAcsc::m_d {}
private

Definition at line 62 of file DblQ00IAcsc.h.

◆ m_nObj

unsigned int MuonGM::DblQ00IAcsc::m_nObj {0}
private

Definition at line 63 of file DblQ00IAcsc.h.


The documentation for this class was generated from the following files:
MuonGM::DblQ00IAcsc::DblQ00IAcsc
DblQ00IAcsc()=default
checkFileSG.line
line
Definition: checkFileSG.py:75
A
TRT_PAI_gasdata::NO
const int NO
Number of levels for Oxygen.
Definition: TRT_PAI_gasdata.h:297
CaloCondBlobAlgs_fillNoiseFromASCII.lines
lines
Definition: CaloCondBlobAlgs_fillNoiseFromASCII.py:104
lumiFormat.i
int i
Definition: lumiFormat.py:85
TRT::Hit::layer
@ layer
Definition: HitInfo.h:79
file
TFile * file
Definition: tile_monitor.h:29
MuonGM::DblQ00IAcsc::m_nObj
unsigned int m_nObj
Definition: DblQ00IAcsc.h:63
MuonGM::DblQ00IAcsc::m_d
std::vector< IACSC > m_d
Definition: DblQ00IAcsc.h:62
python.IoTestsLib.w
def w
Definition: IoTestsLib.py:200
test_interactive_athena.job
job
Definition: test_interactive_athena.py:6