ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
DetectorDescription
AGDD
AGDDKernel
AGDDKernel
AGDDDetector.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef AGDDDetector_H
6
#define AGDDDetector_H
7
8
#include "
AGDDKernel/AGDDDetectorPositioner.h
"
9
#include <string>
10
#include <vector>
11
#include <iostream>
12
13
class
GeoMaterial;
14
15
class
AGDDDetector
{
16
public
:
17
AGDDDetector
(
const
std::string& s):
m_small_x
(0),
m_large_x
(0),
m_y
(0),
m_z
(0),
m_name
(s) {}
18
AGDDDetector
(
const
std::string& s,
const
std::string& t):
m_small_x
(0),
m_large_x
(0),
m_y
(0),
m_z
(0),
m_detectorType
(t),
m_name
(s) {}
19
virtual
~AGDDDetector
() {}
20
virtual
void
SetXYZ
(
const
std::vector<double>& v)
21
{
22
m_small_x
=v[0];
23
m_large_x
=v[1];
24
m_y
=v[2];
25
m_z
=v[3];
26
}
27
28
void
small_x
(
double
x
) {
m_small_x
=
x
;}
29
void
large_x
(
double
x
) {
m_large_x
=
x
;}
30
void
y
(
double
yval) {
m_y
=yval;}
31
void
z
(
double
zval) {
m_z
=zval;}
32
void
subType
(
const
std::string& s) {
m_sType
=s;}
33
double
small_x
()
const
{
return
m_small_x
;}
34
double
large_x
()
const
{
return
m_large_x
;}
35
double
y
()
const
{
return
m_y
;}
36
double
z
()
const
{
return
m_z
;}
37
const
std::string&
subType
()
const
{
return
m_sType
;}
38
std::string
tech
;
39
40
const
std::string&
GetName
()
const
{
return
m_name
;}
41
42
const
std::string&
DetectorType
()
const
{
return
m_detectorType
;}
43
const
std::string&
DetectorID
()
const
{
return
m_detectorID
;}
44
45
void
SetAddressAndPosition
(
AGDDDetectorPositioner
*) ;
46
47
std::vector<AGDDDetectorPositioner*>&
GetDetectorPositioners
();
48
49
protected
:
50
double
m_small_x
;
51
double
m_large_x
;
52
double
m_y
;
53
double
m_z
;
54
55
// detector Type to avoid dynamic casting
56
std::string
m_detectorType
;
57
std::string
m_detectorID
;
58
59
std::string
m_sType
;
60
61
GeoMaterial*
GetMMMaterial
(std::string);
62
63
void
AddDetectorPosition
(
AGDDDetectorPositioner
* p);
64
65
virtual
void
SetDetectorAddress
(
AGDDDetectorPositioner
*) =0;
66
std::vector<AGDDDetectorPositioner*>
m_detectorPositions
;
67
68
std::string
m_name
;
69
};
70
71
#endif
AGDDDetectorPositioner.h
x
#define x
AGDDDetectorPositioner
Definition
AGDDDetectorPositioner.h:39
AGDDDetector::GetName
const std::string & GetName() const
Definition
AGDDDetector.h:40
AGDDDetector::GetDetectorPositioners
std::vector< AGDDDetectorPositioner * > & GetDetectorPositioners()
Definition
AGDDDetector.cxx:14
AGDDDetector::m_y
double m_y
Definition
AGDDDetector.h:52
AGDDDetector::AGDDDetector
AGDDDetector(const std::string &s, const std::string &t)
Definition
AGDDDetector.h:18
AGDDDetector::SetXYZ
virtual void SetXYZ(const std::vector< double > &v)
Definition
AGDDDetector.h:20
AGDDDetector::SetDetectorAddress
virtual void SetDetectorAddress(AGDDDetectorPositioner *)=0
AGDDDetector::m_z
double m_z
Definition
AGDDDetector.h:53
AGDDDetector::m_sType
std::string m_sType
Definition
AGDDDetector.h:59
AGDDDetector::DetectorType
const std::string & DetectorType() const
Definition
AGDDDetector.h:42
AGDDDetector::large_x
void large_x(double x)
Definition
AGDDDetector.h:29
AGDDDetector::~AGDDDetector
virtual ~AGDDDetector()
Definition
AGDDDetector.h:19
AGDDDetector::m_large_x
double m_large_x
Definition
AGDDDetector.h:51
AGDDDetector::m_small_x
double m_small_x
Definition
AGDDDetector.h:50
AGDDDetector::z
void z(double zval)
Definition
AGDDDetector.h:31
AGDDDetector::DetectorID
const std::string & DetectorID() const
Definition
AGDDDetector.h:43
AGDDDetector::m_detectorPositions
std::vector< AGDDDetectorPositioner * > m_detectorPositions
Definition
AGDDDetector.h:66
AGDDDetector::m_name
std::string m_name
Definition
AGDDDetector.h:68
AGDDDetector::m_detectorType
std::string m_detectorType
Definition
AGDDDetector.h:56
AGDDDetector::small_x
void small_x(double x)
Definition
AGDDDetector.h:28
AGDDDetector::m_detectorID
std::string m_detectorID
Definition
AGDDDetector.h:57
AGDDDetector::subType
void subType(const std::string &s)
Definition
AGDDDetector.h:32
AGDDDetector::SetAddressAndPosition
void SetAddressAndPosition(AGDDDetectorPositioner *)
Definition
AGDDDetector.cxx:8
AGDDDetector::GetMMMaterial
GeoMaterial * GetMMMaterial(std::string)
AGDDDetector::z
double z() const
Definition
AGDDDetector.h:36
AGDDDetector::AGDDDetector
AGDDDetector(const std::string &s)
Definition
AGDDDetector.h:17
AGDDDetector::y
void y(double yval)
Definition
AGDDDetector.h:30
AGDDDetector::tech
std::string tech
Definition
AGDDDetector.h:38
AGDDDetector::AddDetectorPosition
void AddDetectorPosition(AGDDDetectorPositioner *p)
Definition
AGDDDetector.cxx:19
AGDDDetector::small_x
double small_x() const
Definition
AGDDDetector.h:33
AGDDDetector::large_x
double large_x() const
Definition
AGDDDetector.h:34
AGDDDetector::subType
const std::string & subType() const
Definition
AGDDDetector.h:37
AGDDDetector::y
double y() const
Definition
AGDDDetector.h:35
Generated on
for ATLAS Offline Software by
1.17.0