![]() |
Project
|
#include <TPCFastTransform.h>
Inherits o2::gpu::FlatObject.
Public Member Functions | |
| TPCFastTransform () | |
| _____________ Constructors / destructors __________________________ | |
| TPCFastTransform (const TPCFastTransform &)=delete | |
| Copy constructor: disabled to avoid ambiguity. Use cloneFromObject() instead. | |
| TPCFastTransform & | operator= (const TPCFastTransform &)=delete |
| Assignment operator: disabled to avoid ambiguity. Use cloneFromObject() instead. | |
| void | destroy () |
| ~TPCFastTransform () | |
| Destructor. | |
| void | cloneFromObject (const TPCFastTransform &obj, char *newFlatBufferPtr) |
| Construction interface. | |
| void | moveBufferTo (char *newBufferPtr) |
| void | setActualBufferAddress (char *actualFlatBufferPtr) |
| Moving the class with its external buffer to another location. | |
| void | setFutureBufferAddress (char *futureFlatBufferPtr) |
| void | startConstruction (const TPCFastSpaceChargeCorrection &correction) |
| _______________ Construction interface ________________________ | |
| void | setCalibration (int64_t timeStamp, float t0, float vDrift) |
| void | setLumi (float l) |
| Set Lumi info. | |
| void | setLumiError (float e) |
| void | setLumiScaleFactor (float s) |
| void | setIDC (float l) |
| void | setIDCError (float e) |
| void | setCTP2IDCFallBackThreshold (float v) |
| void | setTimeStamp (int64_t v) |
| Sets the time stamp of the current calibaration. | |
| GPUdi () const TPCFastSpaceChargeCorrection &getCorrection() const | |
| Gives a reference for external initialization of TPC corrections. | |
| TPCFastSpaceChargeCorrection & | getCorrection () |
| Gives a reference for external initialization of TPC corrections. | |
| void | finishConstruction () |
| Finishes initialization: puts everything to the flat buffer, releases temporary memory. | |
| GPUd () void Transform(int32_t sector | |
| GPUd () void TransformXYZ(int32_t sector | |
| GPUd () void TransformInTimeFrame(int32_t sector | |
| Transformation in the time frame. | |
| GPUd () void TransformInTimeFrame(int32_t sector | |
| GPUd () void InverseTransformInTimeFrame(int32_t sector | |
| Inverse transformation. | |
| GPUd () float InverseTransformInTimeFrame(int32_t sector | |
| GPUd () void InverseTransformYZtoX(int32_t sector | |
| Inverse transformation: Transformed Y and Z -> transformed X. | |
| GPUd () void InverseTransformYZtoNominalYZ(int32_t sector | |
| Inverse transformation: Transformed Y and Z -> Y and Z, transformed w/o space charge correction. | |
| GPUd () void InverseTransformXYZtoNominalXYZ(int32_t sector | |
| Inverse transformation: Transformed X, Y and Z -> X, Y and Z, transformed w/o space charge correction. | |
| GPUd () void TransformIdeal(int32_t sector | |
| Ideal transformation with Vdrift only - without calibration. | |
| GPUd () void TransformIdealZ(int32_t sector | |
| GPUd () void convPadTimeToLocal(int32_t sector | |
| GPUd () void convPadTimeToLocalInTimeFrame(int32_t sector | |
| GPUd () void convLocalToPadTime(int32_t sector | |
| GPUd () void convLocalToPadTimeInTimeFrame(int32_t sector | |
| GPUd () float convTimeToZinTimeFrame(int32_t sector | |
| GPUd () float convZtoTimeInTimeFrame(int32_t sector | |
| GPUd () float convDeltaTimeToDeltaZinTimeFrame(int32_t sector | |
| GPUd () float convDeltaZtoDeltaTimeInTimeFrame(int32_t sector | |
| GPUd () float convDeltaZtoDeltaTimeInTimeFrameAbs(float deltaZ) const | |
| GPUd () float convZOffsetToVertexTime(int32_t sector | |
| GPUd () float convVertexTimeToZOffset(int32_t sector | |
| void | setApplyCorrectionOn () |
| void | setApplyCorrectionOff () |
| bool | isCorrectionApplied () |
| GPUdi () const TPCFastTransformGeo &getGeometry() const | |
| _______________ Utilities _______________________________________________ | |
| GPUdi () int64_t getTimeStamp() const | |
| Gives the time stamp of the current calibaration parameters. | |
| GPUdi () float getVDrift() const | |
| Return mVDrift in cm / time bin. | |
| GPUdi () float getT0() const | |
| Return T0 in time bin units. | |
| GPUdi () float getLumi() const | |
| Return map lumi. | |
| GPUdi () float isLumiSet() const | |
| GPUdi () float getLumiError() const | |
| Return map lumi error. | |
| GPUd () float getIDC() const | |
| Return map lumi. | |
| GPUdi () bool isIDCSet() const | |
| GPUdi () float getIDCError() const | |
| Return map lumi error. | |
| GPUdi () float getCTP2IDCFallBackThreshold() const | |
| GPUdi () float getLumiScaleFactor() const | |
| Return map user defined lumi scale factor. | |
| GPUd () float getMaxDriftTime(int32_t sector | |
| maximal possible drift time of the active area | |
| GPUd () float getMaxDriftTime(int32_t sector | |
| maximal possible drift time of the active area | |
| GPUd () float getMaxDriftTime(int32_t sector) const | |
| maximal possible drift time of the active area | |
| int32_t | writeToFile (std::string outFName="", std::string name="") |
| void | rectifyAfterReadingFromFile () |
| void | setSlowTPCSCCorrection (TFile &inpf) |
| setting the reference corrections | |
| const auto & | getCorrectionSlow () const |
| void | print () const |
| Print method. | |
| GPUd () float convDriftLengthToTime(float driftLength | |
| char * | releaseInternalBuffer () |
| Making the data buffer external. | |
Public Member Functions inherited from o2::gpu::FlatObject | |
| FlatObject ()=default | |
| _____________ Constructors / destructors __________________________ | |
| ~FlatObject () | |
| FlatObject (const FlatObject &)=delete | |
| FlatObject & | operator= (const FlatObject &)=delete |
| template<typename T > | |
| T * | resizeArray (T *&ptr, int32_t oldSize, int32_t newSize, T *newPtr=nullptr) |
| template<typename T > | |
| T ** | resizeArray (T **&ptr, int32_t oldSize, int32_t newSize, T **newPtr=nullptr) |
| void | destroy () |
| _______________ Utilities _______________________________________________ | |
| GPUdi () size_t getFlatBufferSize() const | |
| Gives size of the flat buffer. | |
| GPUdi () const char *getFlatBufferPtr() const | |
| Gives pointer to the flat buffer. | |
| bool | isConstructed () const |
| Tells if the object is constructed. | |
| bool | isBufferInternal () const |
| Tells if the buffer is internal. | |
| void | adoptInternalBuffer (char *buf) |
| void | clearInternalBufferPtr () |
| void | printC () const |
| Print the content of the flat buffer. | |
Static Public Member Functions | |
| static constexpr size_t | getClassAlignmentBytes () |
| _____________ FlatObject functionality, see FlatObject class for description ____________ | |
| static constexpr size_t | getBufferAlignmentBytes () |
| Gives minimal alignment in bytes required for the flat buffer. | |
| static TPCFastTransform * | loadFromFile (std::string inpFName="", std::string name="") |
Static Public Member Functions inherited from o2::gpu::FlatObject | |
| static constexpr 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 Public Attributes | |
| static constexpr float | DEFLUMI = -1e6f |
| static constexpr float | DEFIDC = -1e6f |
Additional Inherited Members | |
Protected Types inherited from o2::gpu::FlatObject | |
| enum | ConstructionState : uint32_t { NotConstructed = 0x0 , Constructed = 0x1 , InProgress = 0x2 } |
| GPUCA_GPUCODE. More... | |
Protected Member Functions inherited from o2::gpu::FlatObject | |
| 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. | |
Static Protected Member Functions inherited from o2::gpu::FlatObject | |
| static constexpr size_t | getClassAlignmentBytes () |
| GPUCA_GPUCODE. | |
| static constexpr size_t | getBufferAlignmentBytes () |
| Gives minimal alignment in bytes required for the flat buffer. | |
Protected Attributes inherited from o2::gpu::FlatObject | |
| 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 |
The TPCFastTransform class represents transformation of raw TPC coordinates to XYZ
(TPC Row number, Pad, Drift Time) -> (X,Y,Z)
The following coordinate systems are used:
drift volume coordinate system (x,u,v)[cm]. These are cartesian coordinates: x = local x, u = along the local y axis but towards to the pad increase direction, v = along the global z axis but towards the drift length increase derection.
u and v are mirrored for A/C sides of the TPC
The transformation is pefformed as the following:
First, the class transforms input raw coordinates to the drift volume coordinates applying the drift velocity calibration. Then it aplies TPCCorrectionIRS to the drift coordinates. At the end it transforms the drift coordinates to the output local coordinates.
The class is flat C structure. No virtual methods, no ROOT types are used.
Definition at line 94 of file TPCFastTransform.h.
| TPCFastTransform::TPCFastTransform | ( | ) |
_____________ Constructors / destructors __________________________
Default constructor: creates an empty uninitialized object
Definition at line 37 of file TPCFastTransform.cxx.
|
delete |
Copy constructor: disabled to avoid ambiguity. Use cloneFromObject() instead.
|
inline |
Destructor.
Definition at line 119 of file TPCFastTransform.h.
| void TPCFastTransform::cloneFromObject | ( | const TPCFastTransform & | obj, |
| char * | newFlatBufferPtr | ||
| ) |
Construction interface.
See FlatObject for description
Definition at line 43 of file TPCFastTransform.cxx.
|
inline |
Definition at line 111 of file TPCFastTransform.h.
| void TPCFastTransform::finishConstruction | ( | ) |
Finishes initialization: puts everything to the flat buffer, releases temporary memory.
Finishes initialization: puts everything to the flat buffer, releases temporary memory
Definition at line 129 of file TPCFastTransform.cxx.
|
inlinestaticconstexpr |
Gives minimal alignment in bytes required for the flat buffer.
Definition at line 135 of file TPCFastTransform.h.
|
inlinestaticconstexpr |
_____________ FlatObject functionality, see FlatObject class for description ____________
Memory alignment Gives minimal alignment in bytes required for the class object
Definition at line 132 of file TPCFastTransform.h.
|
inline |
Gives a reference for external initialization of TPC corrections.
Definition at line 176 of file TPCFastTransform.h.
|
inline |
Definition at line 284 of file TPCFastTransform.h.
| o2::gpu::TPCFastTransform::GPUd | ( | ) |
| o2::gpu::TPCFastTransform::GPUd | ( | ) |
| o2::gpu::TPCFastTransform::GPUd | ( | ) | const |
| o2::gpu::TPCFastTransform::GPUd | ( | ) |
| o2::gpu::TPCFastTransform::GPUd | ( | ) |
| o2::gpu::TPCFastTransform::GPUd | ( | ) |
| o2::gpu::TPCFastTransform::GPUd | ( | ) |
| o2::gpu::TPCFastTransform::GPUd | ( | ) |
| o2::gpu::TPCFastTransform::GPUd | ( | ) | const |
Return map lumi.
| o2::gpu::TPCFastTransform::GPUd | ( | ) |
maximal possible drift time of the active area
| o2::gpu::TPCFastTransform::GPUd | ( | ) |
maximal possible drift time of the active area
| o2::gpu::TPCFastTransform::GPUd | ( | ) | const |
maximal possible drift time of the active area
| o2::gpu::TPCFastTransform::GPUd | ( | ) |
| o2::gpu::TPCFastTransform::GPUd | ( | ) |
| o2::gpu::TPCFastTransform::GPUd | ( | ) |
| o2::gpu::TPCFastTransform::GPUd | ( | ) |
| o2::gpu::TPCFastTransform::GPUd | ( | ) |
| o2::gpu::TPCFastTransform::GPUd | ( | ) |
Inverse transformation.
| o2::gpu::TPCFastTransform::GPUd | ( | ) |
Inverse transformation: Transformed X, Y and Z -> X, Y and Z, transformed w/o space charge correction.
| o2::gpu::TPCFastTransform::GPUd | ( | ) |
Inverse transformation: Transformed Y and Z -> Y and Z, transformed w/o space charge correction.
| o2::gpu::TPCFastTransform::GPUd | ( | ) |
Inverse transformation: Transformed Y and Z -> transformed X.
| o2::gpu::TPCFastTransform::GPUd | ( | ) |
_______________ The main method: cluster transformation _______________________
Transforms raw TPC coordinates to local XYZ withing a sector taking calibration into account.
| o2::gpu::TPCFastTransform::GPUd | ( | ) |
Ideal transformation with Vdrift only - without calibration.
| o2::gpu::TPCFastTransform::GPUd | ( | ) |
| o2::gpu::TPCFastTransform::GPUd | ( | ) |
Transformation in the time frame.
| o2::gpu::TPCFastTransform::GPUd | ( | ) |
| o2::gpu::TPCFastTransform::GPUd | ( | ) |
|
inline |
Definition at line 253 of file TPCFastTransform.h.
|
inline |
Gives a reference for external initialization of TPC corrections.
Definition at line 173 of file TPCFastTransform.h.
|
inline |
_______________ Utilities _______________________________________________
TPC geometry information
Definition at line 231 of file TPCFastTransform.h.
|
inline |
Definition at line 258 of file TPCFastTransform.h.
|
inline |
Return map lumi error.
Definition at line 256 of file TPCFastTransform.h.
|
inline |
Return map lumi.
Definition at line 243 of file TPCFastTransform.h.
|
inline |
Return map lumi error.
Definition at line 248 of file TPCFastTransform.h.
|
inline |
Return map user defined lumi scale factor.
Definition at line 261 of file TPCFastTransform.h.
|
inline |
Return T0 in time bin units.
Definition at line 240 of file TPCFastTransform.h.
|
inline |
Return mVDrift in cm / time bin.
Definition at line 237 of file TPCFastTransform.h.
|
inline |
Definition at line 245 of file TPCFastTransform.h.
|
inline |
Gives the time stamp of the current calibaration parameters.
Definition at line 234 of file TPCFastTransform.h.
|
inline |
Definition at line 226 of file TPCFastTransform.h.
|
static |
load from file
Definition at line 193 of file TPCFastTransform.cxx.
See FlatObject for description
Definition at line 67 of file TPCFastTransform.cxx.
|
delete |
Assignment operator: disabled to avoid ambiguity. Use cloneFromObject() instead.
| void TPCFastTransform::print | ( | ) | const |
Print method.
Definition at line 141 of file TPCFastTransform.cxx.
| void TPCFastTransform::rectifyAfterReadingFromFile | ( | ) |
Definition at line 188 of file TPCFastTransform.cxx.
|
inline |
Making the data buffer external.
Definition at line 218 of file FlatObject.h.
Moving the class with its external buffer to another location.
See FlatObject for description
Definition at line 74 of file TPCFastTransform.cxx.
|
inline |
Definition at line 225 of file TPCFastTransform.h.
|
inline |
Definition at line 224 of file TPCFastTransform.h.
Sets all drift calibration parameters and the time stamp
It must be called once during construction, but also may be called afterwards to reset these parameters.
Sets all drift calibration parameters and the time stamp
It must be called once during initialization, but also may be called after to reset these parameters.
Definition at line 116 of file TPCFastTransform.cxx.
Definition at line 168 of file TPCFastTransform.h.
See FlatObject for description
Definition at line 81 of file TPCFastTransform.cxx.
Definition at line 166 of file TPCFastTransform.h.
Definition at line 167 of file TPCFastTransform.h.
Set Lumi info.
Definition at line 163 of file TPCFastTransform.h.
Definition at line 164 of file TPCFastTransform.h.
Definition at line 165 of file TPCFastTransform.h.
| void TPCFastTransform::setSlowTPCSCCorrection | ( | TFile & | inpf | ) |
setting the reference corrections
Definition at line 235 of file TPCFastTransform.cxx.
Sets the time stamp of the current calibaration.
Definition at line 170 of file TPCFastTransform.h.
| void TPCFastTransform::startConstruction | ( | const TPCFastSpaceChargeCorrection & | correction | ) |
_______________ Construction interface ________________________
Starts the initialization procedure, reserves temporary memory
Starts the construction procedure, reserves temporary memory
Definition at line 92 of file TPCFastTransform.cxx.
| int32_t TPCFastTransform::writeToFile | ( | std::string | outFName = "", |
| std::string | name = "" |
||
| ) |
store to file
Definition at line 159 of file TPCFastTransform.cxx.
Definition at line 190 of file TPCFastTransform.h.
Definition at line 191 of file TPCFastTransform.h.
Definition at line 194 of file TPCFastTransform.h.
Definition at line 195 of file TPCFastTransform.h.
Definition at line 207 of file TPCFastTransform.h.
| float float float vertexTime o2::gpu::TPCFastTransform::const |
Definition at line 208 of file TPCFastTransform.h.
Definition at line 210 of file TPCFastTransform.h.
| float deltaTime o2::gpu::TPCFastTransform::const |
Definition at line 218 of file TPCFastTransform.h.
| float deltaZ o2::gpu::TPCFastTransform::const |
Definition at line 219 of file TPCFastTransform.h.
Definition at line 264 of file TPCFastTransform.h.
| int32_t row o2::gpu::TPCFastTransform::const |
Definition at line 267 of file TPCFastTransform.h.
| float vertexTime o2::gpu::TPCFastTransform::const |
Definition at line 291 of file TPCFastTransform.h.
|
staticconstexpr |
Definition at line 98 of file TPCFastTransform.h.
|
staticconstexpr |
Definition at line 97 of file TPCFastTransform.h.
| int32_t o2::gpu::TPCFastTransform::float |
Definition at line 194 of file TPCFastTransform.h.
Definition at line 204 of file TPCFastTransform.h.
Definition at line 201 of file TPCFastTransform.h.
Definition at line 204 of file TPCFastTransform.h.
Definition at line 201 of file TPCFastTransform.h.
Definition at line 204 of file TPCFastTransform.h.
Definition at line 186 of file TPCFastTransform.h.
Definition at line 194 of file TPCFastTransform.h.
| int32_t float float float const TPCFastTransform * o2::gpu::TPCFastTransform::ref = nullptr |
Definition at line 186 of file TPCFastTransform.h.
| int32_t float float float const TPCFastTransform* o2::gpu::TPCFastTransform::ref = nullptr |
Definition at line 187 of file TPCFastTransform.h.
Definition at line 201 of file TPCFastTransform.h.
| int32_t float float float const TPCFastTransform const TPCFastTransform * o2::gpu::TPCFastTransform::ref2 = nullptr |
Definition at line 186 of file TPCFastTransform.h.
| int32_t float float float const TPCFastTransform const TPCFastTransform* o2::gpu::TPCFastTransform::ref2 = nullptr |
Definition at line 187 of file TPCFastTransform.h.
| int32_t float float float float const TPCFastTransform const TPCFastTransform* o2::gpu::TPCFastTransform::ref2 = nullptr |
Definition at line 201 of file TPCFastTransform.h.
| int32_t o2::gpu::TPCFastTransform::row |
Definition at line 186 of file TPCFastTransform.h.
| int32_t float float float const TPCFastTransform const TPCFastTransform float o2::gpu::TPCFastTransform::scale = 0.f |
Definition at line 186 of file TPCFastTransform.h.
| int32_t float float float const TPCFastTransform const TPCFastTransform float o2::gpu::TPCFastTransform::scale = 0.f |
Definition at line 187 of file TPCFastTransform.h.
| int32_t float float float float const TPCFastTransform const TPCFastTransform float o2::gpu::TPCFastTransform::scale = 0.f |
Definition at line 201 of file TPCFastTransform.h.
| int32_t float float float const TPCFastTransform const TPCFastTransform float float o2::gpu::TPCFastTransform::scale2 = 0.f |
Definition at line 186 of file TPCFastTransform.h.
| int32_t float float float const TPCFastTransform const TPCFastTransform float float o2::gpu::TPCFastTransform::scale2 = 0.f |
Definition at line 187 of file TPCFastTransform.h.
| int32_t float float float float const TPCFastTransform const TPCFastTransform float float o2::gpu::TPCFastTransform::scale2 = 0.f |
Definition at line 201 of file TPCFastTransform.h.
| int32_t float float float float float float const TPCFastTransform const TPCFastTransform float float int32_t o2::gpu::TPCFastTransform::scaleMode = 0) const |
Definition at line 186 of file TPCFastTransform.h.
| int32_t float float float const TPCFastTransform const TPCFastTransform float float int32_t o2::gpu::TPCFastTransform::scaleMode = 0) const |
Definition at line 187 of file TPCFastTransform.h.
| int32_t float float float float const TPCFastTransform const TPCFastTransform float float int32_t o2::gpu::TPCFastTransform::scaleMode = 0) const |
Definition at line 201 of file TPCFastTransform.h.
| float o2::gpu::TPCFastTransform::time |
Definition at line 186 of file TPCFastTransform.h.
| float o2::gpu::TPCFastTransform::time |
Definition at line 191 of file TPCFastTransform.h.
Definition at line 194 of file TPCFastTransform.h.
Definition at line 186 of file TPCFastTransform.h.
| float o2::gpu::TPCFastTransform::vertexTime |
Definition at line 222 of file TPCFastTransform.h.
| int32_t float & o2::gpu::TPCFastTransform::x |
Definition at line 186 of file TPCFastTransform.h.
| int32_t float& o2::gpu::TPCFastTransform::x |
Definition at line 187 of file TPCFastTransform.h.
| int32_t float o2::gpu::TPCFastTransform::x |
Definition at line 204 of file TPCFastTransform.h.
Definition at line 186 of file TPCFastTransform.h.
Definition at line 187 of file TPCFastTransform.h.
| int32_t float o2::gpu::TPCFastTransform::y |
Definition at line 194 of file TPCFastTransform.h.
Definition at line 204 of file TPCFastTransform.h.
Definition at line 210 of file TPCFastTransform.h.
Definition at line 186 of file TPCFastTransform.h.
Definition at line 187 of file TPCFastTransform.h.
Definition at line 191 of file TPCFastTransform.h.
Definition at line 194 of file TPCFastTransform.h.
| float o2::gpu::TPCFastTransform::z |
Definition at line 195 of file TPCFastTransform.h.
Definition at line 204 of file TPCFastTransform.h.
Definition at line 210 of file TPCFastTransform.h.
| float o2::gpu::TPCFastTransform::zOffset |
Definition at line 221 of file TPCFastTransform.h.