|
static size_t | alignSize (size_t sizeBytes, size_t alignmentBytes) |
| _______________ Generic utilities _______________________________________________
|
|
template<class T > |
static T * | relocatePointer (const char *oldBase, char *newBase, const T *ptr) |
| Relocates a pointer inside a buffer to the new buffer address.
|
|
template<class T , class TFile > |
static int32_t | writeToFile (T &obj, TFile &outf, const char *name) |
| write a child class object to the file
|
|
template<class T , class TFile > |
static T * | readFromFile (TFile &inpf, const char *name) |
| read a child class object from the file
|
|
template<class T > |
static std::string | stressTest (T &obj) |
| Test the flat object functionality for a child class T.
|
|
static constexpr | GPUd () int getSector(int det) |
|
static constexpr | GPUd () float getTime0(int layer) |
|
static constexpr | GPUd () float getXtrdBeg() |
|
static constexpr | GPUd () float getXtrdEnd() |
|
static constexpr | GPUd () float getChamberWidth(int layer) |
|
static constexpr | GPUd () float getChamberLength(int layer |
|
static constexpr | GPUd () float getAlpha() |
|
static constexpr | GPUd () float cheight() |
|
static constexpr | GPUd () float cheightSV() |
|
static constexpr | GPUd () float cspace() |
|
static constexpr | GPUd () float craHght() |
|
static constexpr | GPUd () float cdrHght() |
|
static constexpr | GPUd () float camHght() |
|
static constexpr | GPUd () float croHght() |
|
static constexpr | GPUd () float csvHght() |
|
static constexpr | GPUd () float croWid() |
|
static constexpr | GPUd () float anodePos() |
|
static constexpr | GPUd () float myThick() |
|
static constexpr | GPUd () float drThick() |
|
static constexpr | GPUd () float amThick() |
|
static constexpr | GPUd () float drZpos() |
|
static constexpr | GPUd () float rpadW() |
|
static constexpr | GPUd () float cpadW() |
|
static constexpr | GPUd () float cwidcha() |
|
static constexpr | GPUd () int MCMmax() |
|
static constexpr | GPUd () int MCMrow() |
|
static constexpr | GPUd () int ROBmaxC0() |
|
static constexpr | GPUd () int ROBmaxC1() |
|
static constexpr | GPUd () int ADCmax() |
|
static constexpr | GPUd () int TBmax() |
|
static constexpr | GPUd () int padmax() |
|
static constexpr | GPUd () int colmax() |
|
static constexpr | GPUd () int rowmaxC0() |
|
static constexpr | GPUd () int rowmaxC1() |
|
enum | ConstructionState : uint32_t { NotConstructed = 0x0
, Constructed = 0x1
, InProgress = 0x2
} |
| GPUCA_GPUCODE. More...
|
|
void | startConstruction () |
| _____________ Construction _________
|
|
void | finishConstruction (int32_t flatBufferSize) |
|
void | cloneFromObject (const FlatObject &obj, char *newFlatBufferPtr) |
|
char * | releaseInternalBuffer () |
| _____________ Methods for making the data buffer external __________________________
|
|
void | moveBufferTo (char *newBufferPtr) |
|
void | setActualBufferAddress (char *actualFlatBufferPtr) |
| _____________ Methods for moving the class with its external buffer to another location __________________________
|
|
void | setFutureBufferAddress (char *futureFlatBufferPtr) |
|
| ClassDefNV (FlatObject, 1) |
| Pointer to the flat buffer.
|
|
| GeometryBase ()=default |
|
| ClassDefNV (GeometryBase, 1) |
|
static constexpr size_t | getClassAlignmentBytes () |
| _____________ Memory alignment __________________________
|
|
static constexpr size_t | getBufferAlignmentBytes () |
| Gives minimal alignment in bytes required for the flat buffer.
|
|
int32_t | mFlatBufferSize = 0 |
| size of the flat buffer
|
|
uint32_t | mConstructionMask = ConstructionState::NotConstructed |
| mask for constructed object members, first two bytes are used by this class
|
|
char * | mFlatBufferContainer = nullptr |
|
char * | mFlatBufferPtr = nullptr |
|
PadPlane | mPadPlanes [constants::NLAYER *constants::NSTACK] |
|
int | mSMStatus = 0x3ffff |
|
static constexpr float | TLENGTH = 751.0 |
| Total length of the TRD mother volume.
|
|
static constexpr float | SHEIGHT = 77.9 |
| Height of the supermodule.
|
|
static constexpr float | SWIDTH1 = 94.881 |
| Lower width of the supermodule.
|
|
static constexpr float | SWIDTH2 = 122.353 |
| Upper width of the supermodule.
|
|
static constexpr float | SLENGTH = 702.0 |
| Length of the supermodule.
|
|
static constexpr float | FLENGTH = (TLENGTH - SLENGTH) / 2.0 |
|
static constexpr float | SMPLTT = 0.2 |
| Thickness of the super module side plates.
|
|
static constexpr float | VSPACE = 1.784 |
| Vertical spacing of the chambers.
|
|
static constexpr float | HSPACE = 2.0 |
| Horizontal spacing of the chambers.
|
|
static constexpr float | VROCSM = 1.2 |
| Radial distance of the first ROC to the outer plates of the SM.
|
|
static constexpr float | CRAH = 4.8 |
| Height of the radiator part of the chambers.
|
|
static constexpr float | CDRH = 3.0 |
| Height of the drift region of the chambers.
|
|
static constexpr float | CAMH = 0.7 |
| Height of the amplification region of the chambers.
|
|
static constexpr float | CROH = 2.316 |
| Height of the readout of the chambers.
|
|
static constexpr float | CROW = 0.9 |
| Additional width of the readout chamber frames.
|
|
static constexpr float | CSVH = VSPACE - 0.742 |
| Height of the services on top of the chambers.
|
|
static constexpr float | CH = CRAH + CDRH + CAMH + CROH |
| Total height of the chambers (w/o services)
|
|
static constexpr float | CHSV = CH + CSVH |
| Total height of the chambers (with services)
|
|
static constexpr float | ANODEPOS = CRAH + CDRH + CAMH / 2.0 - CHSV / 2.0 |
|
static constexpr float | CALT = 0.4 |
| Thicknesses of different parts of the chamber frame Lower aluminum frame.
|
|
static constexpr float | CCLST = 0.21 |
| Thickness of the lower Wacosit frame sides.
|
|
static constexpr float | CCLFT = 1.0 |
| Thickness of the lower Wacosit frame front.
|
|
static constexpr float | CGLT = 0.25 |
| Thichness of the glue around the radiator.
|
|
static constexpr float | CCUTA = 1.0 |
| Upper Wacosit frame around amplification region.
|
|
static constexpr float | CCUTB = 0.8 |
| Thickness of the upper Wacosit frame around amp. region.
|
|
static constexpr float | CAUT = 1.5 |
| Al frame of back panel.
|
|
static constexpr float | CALW = 2.5 |
| Width of additional aluminum ledge on lower frame.
|
|
static constexpr float | CALH = 0.4 |
| Height of additional aluminum ledge on lower frame.
|
|
static constexpr float | CALWMOD = 0.4 |
| Width of additional aluminum ledge on lower frame.
|
|
static constexpr float | CALHMOD = 2.5 |
| Height of additional aluminum ledge on lower frame.
|
|
static constexpr float | CWSW = 1.2 |
| Width of additional wacosit ledge on lower frame.
|
|
static constexpr float | CWSH = 0.3 |
| Height of additional wacosit ledge on lower frame.
|
|
static constexpr float | CPADW = 0.0 |
|
static constexpr float | RPADW = 1.0 |
| >Difference of outer chamber width and pad plane width
|
|
static constexpr float | DRTHICK = CDRH |
| Thickness of the drift region.
|
|
static constexpr float | AMTHICK = CAMH |
| Thickness of the amplification region.
|
|
static constexpr float | XETHICK = DRTHICK + AMTHICK |
| Thickness of the gas volume.
|
|
static constexpr float | WRTHICK = 0.00011 |
| Thickness of the wire planes.
|
|
static constexpr float | RMYTHICK = 0.0015 |
| Thickness of the mylar layers in the radiator.
|
|
static constexpr float | RCBTHICK = 0.0055 |
| Thickness of the carbon layers in the radiator.
|
|
static constexpr float | RGLTHICK = 0.0065 |
| Thickness of the glue layers in the radiator.
|
|
static constexpr float | RRHTHICK = 0.8 |
| Thickness of the rohacell layers in the radiator.
|
|
static constexpr float | RFBTHICK = CRAH - 2.0 * (RMYTHICK + RCBTHICK + RRHTHICK) |
| Thickness of the fiber layers in the radiator.
|
|
static constexpr float | PPDTHICK = 0.0025 |
| Thickness of copper of the pad plane.
|
|
static constexpr float | PPPTHICK = 0.0356 |
| Thickness of PCB board of the pad plane.
|
|
static constexpr float | PGLTHICK = 0.1428 |
| Thickness of the glue layer.
|
|
static constexpr float | PCBTHICK = 0.019 |
| Thickness of the carbon layers.
|
|
static constexpr float | PPCTHICK = 0.0486 |
| Thickness of the PCB readout boards.
|
|
static constexpr float | PRBTHICK = 0.0057 |
| Thickness of the PCB copper layers.
|
|
static constexpr float | PELTHICK = 0.0029 |
| Thickness of all other electronics components (caps, etc.)
|
|
static constexpr float | PHCTHICK = CROH - PPDTHICK - PPPTHICK - PGLTHICK - PCBTHICK * 2.0 - PPCTHICK - PRBTHICK - PELTHICK |
| Thickness of the honeycomb support structure.
|
|
static constexpr float | DRZPOS = 2.4 |
| Position of the drift region.
|
|
static constexpr float | AMZPOS = 0.0 |
| Position of the amplification region.
|
|
static constexpr float | WRZPOSA = 0.0 |
| Position of the wire planes.
|
|
static constexpr float | WRZPOSB = -AMTHICK / 2.0 + 0.001 |
| Position of the wire planes.
|
|
static constexpr float | CALZPOS = 0.3 |
| Position of the additional aluminum ledges.
|
|
static constexpr int | MCMMAX = 16 |
| Maximum number of MCMs per ROB.
|
|
static constexpr int | MCMROW = 4 |
| Maximum number of MCMs per ROB Row.
|
|
static constexpr int | ROBMAXC0 = 6 |
| Maximum number of ROBs per C0 chamber.
|
|
static constexpr int | ROBMAXC1 = 8 |
| Maximum number of ROBs per C1 chamber.
|
|
static constexpr int | ADCMAX = 21 |
| Maximum number of ADC channels per MCM.
|
|
static constexpr int | TBMAX = 60 |
| Maximum number of Time bins.
|
|
static constexpr int | PADMAX = 18 |
| Maximum number of pads per MCM.
|
|
static constexpr int | COLMAX = 144 |
| Maximum number of pads per padplane row.
|
|
static constexpr int | ROWMAXC0 = 12 |
| Maximum number of Rows per C0 chamber.
|
|
static constexpr int | ROWMAXC1 = 16 |
| Maximum number of Rows per C1 chamber.
|
|
static constexpr float | TIME0BASE = 300.65 |
| Base value for calculation of Time-position of pad 0.
|
|
static constexpr float | TIME0 [6] |
|
static constexpr float | XTRDBEG = 288.43 |
| X-coordinate in tracking system of begin of TRD mother volume.
|
|
static constexpr float | XTRDEND = 366.33 |
| X-coordinate in tracking system of end of TRD mother volume.
|
|
static constexpr float | CWIDTH [constants::NLAYER] = {90.4, 94.8, 99.3, 103.7, 108.1, 112.6} |
|
static constexpr float | CLENGTH [constants::NLAYER][constants::NSTACK] |
|