ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Tracking
TrkDetDescr
TrkDetDescrInterfaces
TrkDetDescrInterfaces
ILayerArrayCreator.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
// ILayerArrayCreator.h, (c) ATLAS Detector software
8
9
#ifndef TRKDETDESCRINTERFACES_ILAYERARRAYCREATOR_H
10
#define TRKDETDESCRINTERFACES_ILAYERARRAYCREATOR_H
11
12
// Gaudi
13
#include "GaudiKernel/IAlgTool.h"
14
// TrkDetDescrUtils - templated class and enum
15
#include "
TrkDetDescrUtils/BinnedArray1D.h
"
16
#include "
TrkDetDescrUtils/BinningType.h
"
17
// STL
18
#include <vector>
19
#include <memory>
20
21
namespace
Trk
{
22
24
class
Layer
;
25
class
CylinderLayer
;
26
class
DiscLayer
;
27
class
PlaneLayer
;
28
31
42
class
ILayerArrayCreator
:
virtual
public
IAlgTool {
43
44
public
:
45
47
DeclareInterfaceID
(
ILayerArrayCreator
, 1, 0);
48
50
virtual
~ILayerArrayCreator
() =
default
;
51
53
virtual
std::unique_ptr<Trk::BinnedArray1D<Layer>>
cylinderLayerArray
(
54
const
std::vector<CylinderLayer*>& layers,
55
double
rmin,
56
double
rmax,
57
BinningType
btype =
arbitrary
)
const
= 0;
58
60
virtual
std::unique_ptr<Trk::BinnedArray1D<Layer>>
discLayerArray
(
61
const
std::vector<DiscLayer*>& layers,
62
double
zmin,
63
double
zmax,
64
BinningType
btype =
arbitrary
)
const
= 0;
65
67
virtual
std::unique_ptr<Trk::BinnedArray1D<Layer>>
planeLayerArray
(
68
const
std::vector<PlaneLayer*>& layers,
69
double
min
,
double
max
,
70
BinningType
btype =
arbitrary
,
71
Trk::BinningValue
bv =
Trk::binX
)
const
= 0;
72
75
virtual
void
validationAction
()
const
{}
76
};
77
78
79
}
// end of namespace
80
81
82
#endif
// TRKDETDESCRINTERFACES_ILAYERARRAYCREATOR_H
83
84
BinnedArray1D.h
BinningType.h
min
#define min(a, b)
Definition
cfImp.cxx:40
max
#define max(a, b)
Definition
cfImp.cxx:41
Trk::CylinderLayer
Class to describe a cylindrical detector layer for tracking, it inhertis from both,...
Definition
CylinderLayer.h:43
Trk::DiscLayer
Class to describe a disc-like detector layer for tracking, it inhertis from both, Layer base class an...
Definition
DiscLayer.h:45
Trk::ILayerArrayCreator
Interface class ILayerArrayCreators It inherits from IAlgTool.
Definition
ILayerArrayCreator.h:42
Trk::ILayerArrayCreator::discLayerArray
virtual std::unique_ptr< Trk::BinnedArray1D< Layer > > discLayerArray(const std::vector< DiscLayer * > &layers, double zmin, double zmax, BinningType btype=arbitrary) const =0
LayerArrayCreator interface method - for Endcap-like layers.
Trk::ILayerArrayCreator::~ILayerArrayCreator
virtual ~ILayerArrayCreator()=default
Virtual destructor.
Trk::ILayerArrayCreator::validationAction
virtual void validationAction() const
Validation Action: Can be implemented optionally, outside access to internal validation steps.
Definition
ILayerArrayCreator.h:75
Trk::ILayerArrayCreator::planeLayerArray
virtual std::unique_ptr< Trk::BinnedArray1D< Layer > > planeLayerArray(const std::vector< PlaneLayer * > &layers, double min, double max, BinningType btype=arbitrary, Trk::BinningValue bv=Trk::binX) const =0
LayerArrayCreator interface method - for Planar-like layers.
Trk::ILayerArrayCreator::DeclareInterfaceID
DeclareInterfaceID(ILayerArrayCreator, 1, 0)
Creates the InterfaceID and interfaceID() method.
Trk::ILayerArrayCreator::cylinderLayerArray
virtual std::unique_ptr< Trk::BinnedArray1D< Layer > > cylinderLayerArray(const std::vector< CylinderLayer * > &layers, double rmin, double rmax, BinningType btype=arbitrary) const =0
LayerArrayCreator interface method - for Barrel-like layers.
Trk::Layer
Base Class for a Detector Layer in the Tracking realm.
Definition
Layer.h:72
Trk::PlaneLayer
Class to describe a planar detector layer for tracking, it inhertis from both, Layer base class and P...
Definition
PlaneLayer.h:40
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition
FakeTrackBuilder.h:9
Trk::BinningType
BinningType
, BinningOption & BinningAccess
Definition
BinningType.h:31
Trk::arbitrary
@ arbitrary
Definition
BinningType.h:34
Trk::BinningValue
BinningValue
how to take the global / local position
Definition
BinningType.h:46
Trk::binX
@ binX
Definition
BinningType.h:47
Generated on
for ATLAS Offline Software by
1.17.0