Abstract description of layers in pixel beam telescope. More...
#include <SiPlanesLayerLayoutImpl.h>
Classes | |
struct | Layer |
Helper class for layer properties. More... | |
struct | SensLayer |
Public Types | |
typedef std::vector< Layer > | LayerVec |
typedef std::vector< SensLayer > | SensLayerVec |
typedef Layer | DUT |
typedef SensLayer | SensDUT |
Public Member Functions | |
virtual int | getNLayers () const |
The total number of layers. More... | |
virtual int | getID (int layerIndex) const |
Layer ID of nonsensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. More... | |
virtual double | getLayerRadLength (int layerIndex) const |
The radiation length of nonsensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual double | getLayerPositionX (int layerIndex) const |
x position of the center of nonsensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual double | getLayerPositionY (int layerIndex) const |
y position of the center of nonsensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual double | getLayerPositionZ (int layerIndex) const |
z position of the center of nonsensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual double | getLayerRotationXY (int layerIndex) const |
rotation angles according to Euler implementation scheme (in XY plane -> around axis Z: gamma ) | |
virtual double | getLayerRotationZX (int layerIndex) const |
rotation angles according to Euler implmentation scheme (in ZX plane -> around axis Y: beta ) | |
virtual double | getLayerRotationZY (int layerIndex) const |
rotation angles according to Euler implmentation scheme (in ZY plane -> around axis X: alfa ) | |
virtual double | getLayerSizeX (int layerIndex) const |
Size in x direction of nonsensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual double | getLayerSizeY (int layerIndex) const |
Size in y direction of nonsensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual double | getLayerThickness (int layerIndex) const |
Thickness of nonsensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual void | setID (int layerIndex, int value) |
virtual void | setLayerPositionX (int layerIndex, double value) |
virtual void | setLayerPositionY (int layerIndex, double value) |
virtual void | setLayerPositionZ (int layerIndex, double value) |
virtual void | setLayerRotationXY (int layerIndex, double value) |
virtual void | setLayerRotationZX (int layerIndex, double value) |
virtual void | setLayerRotationZY (int layerIndex, double value) |
virtual void | setLayerSizeX (int layerIndex, double value) |
virtual void | setLayerSizeY (int layerIndex, double value) |
virtual void | setLayerThickness (int layerIndex, double value) |
virtual void | setLayerRadLength (int layerIndex, double value) |
virtual int | getSensitiveID (int layerIndex) const |
ID of sensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. More... | |
virtual double | getSensitivePositionX (int layerIndex) const |
x position of the center of sensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual double | getSensitivePositionY (int layerIndex) const |
y position of the center of sensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual double | getSensitivePositionZ (int layerIndex) const |
z position of the center of sensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual double | getSensitiveRotationXY (int layerIndex) const |
rotation angles according to Euler implementation scheme (in XY plane -> around axis Z: gamma ) | |
virtual double | getSensitiveRotationZX (int layerIndex) const |
rotation angles according to Euler implmentation scheme (in ZX plane -> around axis Y: beta ) | |
virtual double | getSensitiveRotationZY (int layerIndex) const |
rotation angles according to Euler implmentation scheme (in ZY plane -> around axis X: alfa ) | |
virtual double | getSensitiveSizeX (int layerIndex) const |
Size in x direction of sensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual double | getSensitiveSizeY (int layerIndex) const |
Size in y direction of sensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual double | getSensitiveThickness (int layerIndex) const |
Thickness of sensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual double | getSensitiveRadLength (int layerIndex) const |
The radiation length of sensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual void | setSensitiveID (int layerIndex, int value) |
virtual void | setSensitivePositionX (int layerIndex, double value) |
virtual void | setSensitivePositionY (int layerIndex, double value) |
virtual void | setSensitivePositionZ (int layerIndex, double value) |
virtual void | setSensitiveRotationXY (int layerIndex, double value) |
virtual void | setSensitiveRotationZX (int layerIndex, double value) |
virtual void | setSensitiveRotationZY (int layerIndex, double value) |
virtual void | setSensitiveSizeX (int layerIndex, double value) |
virtual void | setSensitiveSizeY (int layerIndex, double value) |
virtual void | setSensitiveThickness (int layerIndex, double value) |
virtual void | setSensitiveRadLength (int layerIndex, double value) |
virtual int | getSensitiveNpixelX (int layerIndex) const |
Number of pixels in x direction in sensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual int | getSensitiveNpixelY (int layerIndex) const |
Number of pixels in y direction in sensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual double | getSensitiveResolution (int layerIndex) const |
Intrinsic resolution of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual double | getSensitiveResolutionX (int layerIndex) const |
Intrinsic resolution of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual double | getSensitiveResolutionY (int layerIndex) const |
Intrinsic resolution of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual double | getSensitivePitchX (int layerIndex) const |
Pitch size in x direction in sensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual double | getSensitivePitchY (int layerIndex) const |
Pitch size in y direction in sensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual double | getSensitiveRotation1 (int layerIndex) const |
First element (cos(theta)) of rotation matrix of sensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual double | getSensitiveRotation2 (int layerIndex) const |
Second element (-sin(theta)) of rotation matrix of sensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual double | getSensitiveRotation3 (int layerIndex) const |
Third element (sin(theta)) of rotation matrix of sensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual double | getSensitiveRotation4 (int layerIndex) const |
Fourth element (cos(theta)) of rotation matrix of sensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual void | setSensitiveNpixelX (int layerIndex, int value) |
Number of pixels in x direction in sensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual void | setSensitiveNpixelY (int layerIndex, int value) |
Number of pixels in y direction in sensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual void | setSensitiveResolution (int layerIndex, double value) |
Intrinsic resolution of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual void | setSensitiveResolutionX (int layerIndex, double value) |
Intrinsic resolution of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual void | setSensitiveResolutionY (int layerIndex, double value) |
Intrinsic resolution of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual void | setSensitivePitchX (int layerIndex, double value) |
Pitch size in x direction in sensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual void | setSensitivePitchY (int layerIndex, double value) |
Pitch size in y direction in sensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual void | setSensitiveRotation1 (int layerIndex, double value) |
First element (cos(theta)) of rotation matrix of sensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual void | setSensitiveRotation2 (int layerIndex, double value) |
Second element (-sin(theta)) of rotation matrix of sensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual void | setSensitiveRotation3 (int layerIndex, double value) |
Third element (sin(theta)) of rotation matrix of sensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual void | setSensitiveRotation4 (int layerIndex, double value) |
Fourth element (cos(theta)) of rotation matrix of sensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source. | |
virtual void | addLayer (int layerID, double layerPositionX, double layerPositionY, double layerPositionZ, double layerRotationXY, double layerRotationZX, double layerRotationZY, double layerSizeX, double layerSizeY, double layerThickness, double layerRadLength, int sensitiveID, double sensitivePositionX, double sensitivePositionY, double sensitivePositionZ, double sensitiveRotationXY, double sensitiveRotationZX, double sensitiveRotationZY, double sensitiveSizeX, double sensitiveSizeY, double sensitiveThickness, int sensitiveNpixelX, int sensitiveNpixelY, double sensitivePitchX, double sensitivePitchY, double sensitiveResolution, double sensitiveResolutionX, double sensitiveResolutionY, double Rotation1, double Rotation2, double Rotation3, double Rotation4, double sensitiveRadLength) |
Add a new layer at the given position. | |
virtual void | addLayer (int layerID, double layerPositionX, double layerPositionY, double layerPositionZ, double layerSizeX, double layerSizeY, double layerThickness, double layerRadLength, int sensitiveID, double sensitivePositionX, double sensitivePositionY, double sensitivePositionZ, double sensitiveSizeX, double sensitiveSizeY, double sensitiveThickness, int sensitiveNpixelX, int sensitiveNpixelY, double sensitivePitchX, double sensitivePitchY, double sensitiveResolution, double Rotation1, double Rotation2, double Rotation3, double Rotation4, double sensitiveRadLength) |
virtual int | getDUTID () const |
ID of nonsensitive volume of the DUT. More... | |
virtual double | getDUTRadLength () const |
The radiation length of nonsensitive volume of the DUT. | |
virtual double | getDUTPositionX () const |
x position of the center of nonsensitive volume of the DUT. More... | |
virtual double | getDUTPositionY () const |
y position of the center of nonsensitive volume of the DUT. More... | |
virtual double | getDUTPositionZ () const |
z position of the center of nonsensitive volume of the DUT. More... | |
virtual double | getDUTSizeX () const |
Size in x direction of nonsensitive volume of the DUT. More... | |
virtual double | getDUTSizeY () const |
Size in y direction of nonsensitive volume of the DUT. More... | |
virtual double | getDUTThickness () const |
Thickness of nonsensitive layer of the DUT. More... | |
virtual int | getDUTSensitiveID () const |
ID of sensitive volume of the DUT. More... | |
virtual double | getDUTSensitiveRadLength () const |
The radiation length of sensitive volume of the DUT. | |
virtual double | getDUTSensitivePositionX () const |
x position of the center of sensitive volume of the DUT. More... | |
virtual double | getDUTSensitivePositionY () const |
y position of the center of sensitive volume of the DUT. More... | |
virtual double | getDUTSensitivePositionZ () const |
z position of the center of sensitive volume of the DUT. More... | |
virtual double | getDUTSensitiveSizeX () const |
Size in x direction of sensitive volume of the DUT. More... | |
virtual double | getDUTSensitiveSizeY () const |
Size in y direction of sensitive volume of the DUT. More... | |
virtual double | getDUTSensitiveThickness () const |
Thickness of sensitive volume of the DUT. More... | |
virtual int | getDUTSensitiveNpixelX () const |
Number of pixels in x direction of sensitive volume of the DUT. More... | |
virtual int | getDUTSensitiveNpixelY () const |
Number of pixels in y direction of sensitive volume of the DUT. More... | |
virtual double | getDUTSensitivePitchX () const |
Pitch size in x direction of sensitive volume of the DUT. More... | |
virtual double | getDUTSensitivePitchY () const |
Pitch size in y direction of sensitive volume of the DUT. More... | |
virtual double | getDUTSensitiveResolution () const |
Intrinsic resolution of the DUT, not relevant. More... | |
virtual double | getDUTSensitiveRotation1 () const |
First element (cos(theta)) of rotation matrix of sensitive volume of the DUT. | |
virtual double | getDUTSensitiveRotation2 () const |
Second element (-sin(theta)) of rotation matrix of sensitive volume of the DUT. | |
virtual double | getDUTSensitiveRotation3 () const |
Third element (sin(theta)) of rotation matrix of sensitive volume of the DUT. | |
virtual double | getDUTSensitiveRotation4 () const |
Fourth element (cos(theta)) of rotation matrix of sensitive volume of the DUT. | |
virtual void | addDUT (int dutID, double dutPositionX, double dutPositionY, double dutPositionZ, double dutSizeX, double dutSizeY, double dutThickness, double dutRadLength, int dutsensitiveID, double dutsensitivePositionX, double dutsensitivePositionY, double dutsensitivePositionZ, double dutsensitiveSizeX, double dutsensitiveSizeY, double dutsensitiveThickness, int dutsensitiveNpixelX, int dutsensitiveNpixelY, double dutsensitivePitchX, double dutsensitivePitchY, double dutsensitiveResolution, double dutsensitiveRotation1, double dutsensitiveRotation2, double dutsensitiveRotation3, double dutsensitiveRotation4, double dutsensitiveRadLength) |
Add a DUT at the given position. | |
Public Member Functions inherited from gear::SiPlanesLayerLayout | |
virtual | ~SiPlanesLayerLayout () |
Destructor. | |
Protected Types | |
typedef double | MyMatrix [2][2] |
Protected Attributes | |
LayerVec | _lVec {} |
SensLayerVec | _sVec {} |
DUT | _lDut {} |
SensDUT | _sDut {} |
Abstract description of layers in pixel beam telescope.
This assumes a number of silicon layers arranged perpendicular to the beam.
Definition at line 18 of file SiPlanesLayerLayoutImpl.h.
|
inlinevirtual |
ID of nonsensitive volume of the DUT.
Implements gear::SiPlanesLayerLayout.
Definition at line 214 of file SiPlanesLayerLayoutImpl.h.
|
inlinevirtual |
x position of the center of nonsensitive volume of the DUT.
Implements gear::SiPlanesLayerLayout.
Definition at line 218 of file SiPlanesLayerLayoutImpl.h.
|
inlinevirtual |
y position of the center of nonsensitive volume of the DUT.
Implements gear::SiPlanesLayerLayout.
Definition at line 219 of file SiPlanesLayerLayoutImpl.h.
|
inlinevirtual |
z position of the center of nonsensitive volume of the DUT.
Implements gear::SiPlanesLayerLayout.
Definition at line 220 of file SiPlanesLayerLayoutImpl.h.
|
inlinevirtual |
ID of sensitive volume of the DUT.
Implements gear::SiPlanesLayerLayout.
Definition at line 226 of file SiPlanesLayerLayoutImpl.h.
|
inlinevirtual |
Number of pixels in x direction of sensitive volume of the DUT.
Implements gear::SiPlanesLayerLayout.
Definition at line 238 of file SiPlanesLayerLayoutImpl.h.
|
inlinevirtual |
Number of pixels in y direction of sensitive volume of the DUT.
Implements gear::SiPlanesLayerLayout.
Definition at line 239 of file SiPlanesLayerLayoutImpl.h.
|
inlinevirtual |
Pitch size in x direction of sensitive volume of the DUT.
Implements gear::SiPlanesLayerLayout.
Definition at line 241 of file SiPlanesLayerLayoutImpl.h.
|
inlinevirtual |
Pitch size in y direction of sensitive volume of the DUT.
Implements gear::SiPlanesLayerLayout.
Definition at line 242 of file SiPlanesLayerLayoutImpl.h.
|
inlinevirtual |
x position of the center of sensitive volume of the DUT.
Implements gear::SiPlanesLayerLayout.
Definition at line 230 of file SiPlanesLayerLayoutImpl.h.
|
inlinevirtual |
y position of the center of sensitive volume of the DUT.
Implements gear::SiPlanesLayerLayout.
Definition at line 231 of file SiPlanesLayerLayoutImpl.h.
|
inlinevirtual |
z position of the center of sensitive volume of the DUT.
Implements gear::SiPlanesLayerLayout.
Definition at line 232 of file SiPlanesLayerLayoutImpl.h.
|
inlinevirtual |
Intrinsic resolution of the DUT, not relevant.
Here just for comleteness.
Implements gear::SiPlanesLayerLayout.
Definition at line 244 of file SiPlanesLayerLayoutImpl.h.
|
inlinevirtual |
Size in x direction of sensitive volume of the DUT.
Implements gear::SiPlanesLayerLayout.
Definition at line 234 of file SiPlanesLayerLayoutImpl.h.
|
inlinevirtual |
Size in y direction of sensitive volume of the DUT.
Implements gear::SiPlanesLayerLayout.
Definition at line 235 of file SiPlanesLayerLayoutImpl.h.
|
inlinevirtual |
Thickness of sensitive volume of the DUT.
Implements gear::SiPlanesLayerLayout.
Definition at line 236 of file SiPlanesLayerLayoutImpl.h.
|
inlinevirtual |
Size in x direction of nonsensitive volume of the DUT.
Implements gear::SiPlanesLayerLayout.
Definition at line 222 of file SiPlanesLayerLayoutImpl.h.
|
inlinevirtual |
Size in y direction of nonsensitive volume of the DUT.
Implements gear::SiPlanesLayerLayout.
Definition at line 223 of file SiPlanesLayerLayoutImpl.h.
|
inlinevirtual |
Thickness of nonsensitive layer of the DUT.
Implements gear::SiPlanesLayerLayout.
Definition at line 224 of file SiPlanesLayerLayoutImpl.h.
|
inlinevirtual |
Layer ID of nonsensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source.
Implements gear::SiPlanesLayerLayout.
Definition at line 82 of file SiPlanesLayerLayoutImpl.h.
|
inlinevirtual |
The total number of layers.
Implements gear::SiPlanesLayerLayout.
Definition at line 80 of file SiPlanesLayerLayoutImpl.h.
|
inlinevirtual |
ID of sensitive volume of layer layerIndex - layer indexing starts at 0 for the layer closest to the beam source.
Implements gear::SiPlanesLayerLayout.
Definition at line 112 of file SiPlanesLayerLayoutImpl.h.