ATLAS Offline Software
Loading...
Searching...
No Matches
DblQ00Almn.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3*/
4
5/********************************************************
6 Class def for MuonGeoModel DblQ00/ALMN
7 *******************************************************/
8
9 // author: S Spagnolo
10 // entered: 07/28/04
11 // comment: MUON STATION ELEMENT
12
13#ifndef DBLQ00_ALMN_H
14#define DBLQ00_ALMN_H
15#include <string>
16#include <vector>
17#include <array>
18
19class IRDBAccessSvc;
20
21
22namespace MuonGM {
24public:
25 DblQ00Almn() = default;
26 ~DblQ00Almn() = default;
27 DblQ00Almn(IRDBAccessSvc *pAccessSvc, const std::string & GeoTag="", const std::string & GeoNode="");
28
29 DblQ00Almn & operator=(const DblQ00Almn &right) = default;
30 DblQ00Almn(const DblQ00Almn&) = default;
31
32
33 // data members for DblQ00/ALMN fields
34 struct ALMN {
35 int version{0}; // VERSION
36 int i{0}; // ELEMENT NUMBER
37 float dx{0.f}; // X RELATIVE POSITION OF THE OBJECT
38 float dy{0.f}; // Y RELATIVE POSITION OF THE OBJECT
39 float dz{0.f}; // Z RELATIVE POSITION OF THE OBJECT
40 int job{0}; // OBJECT SERIAL NUMBER IN THE STATION
41 std::string tec{}; // TYPE OF TECHNOLOGY USED FOR THE OBJECT
42 int iw{0}; // INNER STRUCTURE TYPE INDEX, ISTA
43 int isplit_x{0}; // NUMBER OF SECTIONS IN X
44 int isplit_y{0}; // NUMBER OF SECTIONS IN Y
45 int ishape{0}; // TYPE OF GEOMETRICAL SHAPE 0-TRAPEZOIDAL,
46 float width_xs{0.f}; // S WIDTH, WS
47 float width_xl{0.f}; // L WIDTH, WL
48 float length_y{0.f}; // Y LENGTH, LE
49 float excent{0.f}; // ADDITIONAL INFORMATION, EX
50 float dead1{0.f}; // FIRST DEAD MATERIAL, D1
51 float dead2{0.f}; // SECOND DEAD MATERIAL, D2
52 float dead3{0.f}; // STEPS, D3
53 int jtyp{0}; // STATION TYPE
54 int indx{0}; // ELEMENT NUMBER
55 };
56
57 const ALMN* data() const { return m_d.data(); };
58 unsigned int size() const { return m_nObj; };
59 std::string getName() const { return "ALMN"; };
60 std::string getDirName() const { return "DblQ00"; };
61 std::string getObjName() const { return "ALMN"; };
62
63private:
64 std::vector<ALMN> m_d{};
65 unsigned int m_nObj{0}; // > 1 if array; 0 if error in retrieve.
66};
67
68
69} // end of MuonGM namespace
70
71#endif // DBLQ00_ALMN_H
72
IRDBAccessSvc is an abstract interface to the athena service that provides the following functionalit...
const ALMN * data() const
Definition DblQ00Almn.h:57
~DblQ00Almn()=default
DblQ00Almn(const DblQ00Almn &)=default
unsigned int size() const
Definition DblQ00Almn.h:58
std::string getName() const
Definition DblQ00Almn.h:59
std::string getObjName() const
Definition DblQ00Almn.h:61
DblQ00Almn & operator=(const DblQ00Almn &right)=default
std::string getDirName() const
Definition DblQ00Almn.h:60
std::vector< ALMN > m_d
Definition DblQ00Almn.h:64
unsigned int m_nObj
Definition DblQ00Almn.h:65
DblQ00Almn()=default
Ensure that the Athena extensions are properly loaded.
Definition GeoMuonHits.h:27