![]() |
Project
|
#include <CalibdEdxContainer.h>
Inherits o2::gpu::FlatObject.
Public Member Functions | |
| CalibdEdxContainer ()=default | |
| Default constructor: creates an empty uninitialized object. | |
| CalibdEdxContainer (const CalibdEdxContainer &)=delete | |
| Copy constructor: disabled to avoid ambiguity. Use cloneFromObject() instead. | |
| CalibdEdxContainer & | operator= (const CalibdEdxContainer &)=delete |
| Assignment operator: disabled to avoid ambiguity. Use cloneFromObject() instead. | |
| ~CalibdEdxContainer ()=default | |
| Destructor. | |
| GPUd () float getTopologyCorrection(const int32_t region | |
| GPUd () float getTopologyCorrection(const int32_t region | |
| GPUd () float getDefaultTopologyCorrection(const float tanTheta | |
| float | getMinZeroSupresssionThreshold () const |
| float | getMaxZeroSupresssionThreshold () const |
| GPUd () float getZeroSupressionThreshold(const int32_t sector | |
| GPUd () float getGain(const int32_t sector | |
| GPUd () float getResidualGain(const int32_t sector | |
| GPUd () bool isDead(const int32_t sector | |
| GPUd () float getResidualCorrection(const StackID &stack | |
| void | moveBufferTo (char *newBufferPtr) |
| void | destroy () |
| destroy the object (release internal flat buffer) | |
| void | setActualBufferAddress (char *actualFlatBufferPtr) |
| set location of external flat buffer | |
| void | setFutureBufferAddress (char *futureFlatBufferPtr) |
| set future location of the flat buffer | |
| void | loadPolTopologyCorrectionFromFile (std::string_view fileName) |
| ================================================================================================ | |
| void | loadSplineTopologyCorrectionFromFile (std::string_view fileName) |
| void | setPolTopologyCorrection (const CalibdEdxTrackTopologyPol &calibTrackTopology) |
| void | setDefaultPolTopologyCorrection () |
| setting a default topology correction which just returns 1 | |
| void | setSplineTopologyCorrection (const CalibdEdxTrackTopologySpline &calibTrackTopology) |
| void | loadResidualCorrectionFromFile (std::string_view fileName) |
| void | setResidualCorrection (const CalibdEdxCorrection &residualCorr) |
| void | loadZeroSupresssionThresholdFromFile (std::string_view fileName, std::string_view objName, const float minCorrectionFactor, const float maxCorrectionFactor) |
| void | setZeroSupresssionThreshold (const CalDet< float > &thresholdMap) |
| void | setZeroSupresssionThreshold (const CalDet< float > &thresholdMap, const float minCorrectionFactor, const float maxCorrectionFactor) |
| void | setDeadChannelMap (const CalDet< bool > &deadMap) |
| setting the gain map map from a CalDet | |
| void | setGainMap (const CalDet< float > &gainMap, const float minGain, const float maxGain) |
| setting the gain map map from a CalDet | |
| void | setGainMapResidual (const CalDet< float > &gainMapResidual, const float minResidualGain=0.7f, const float maxResidualGain=1.3f) |
| setting the gain map map from a CalDet | |
| void | setDefaultZeroSupresssionThreshold () |
| bool | isTopologyCorrectionSplinesSet () const |
| returns status if the spline correction is set | |
| bool | isTopologyCorrectionPolynomialsSet () const |
| returns status if the polynomials correction is set | |
| void | setCorrectionCCDB (const CalibsdEdx calib) |
| void | disableCorrectionCCDB (const CalibsdEdx calib) |
| bool | isCorrectionCCDB (const CalibsdEdx calib) const |
| void | setUsageOfFullGainMap (const bool applyFullGainMap) |
Public Member Functions inherited from o2::gpu::FlatObject | |
| FlatObject ()=default | |
| _____________ Constructors / destructors __________________________ | |
| ~FlatObject () | |
| FlatObject (const FlatObject &)=delete | |
| FlatObject & | operator= (const FlatObject &)=delete |
| void | destroy () |
| _______________ Utilities _______________________________________________ | |
| size_t | getFlatBufferSize () const |
| Gives size of the flat buffer. | |
| 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. | |
Public Attributes | |
| const ChargeType | chargeT |
| const ChargeType const float | tanTheta |
| const ChargeType const float const float | sinPhi |
| const ChargeType const float const float const float | z |
| const ChargeType const float const float const float const float | relPad |
| const ChargeType const float const float const float const float const float | relTime |
| const ChargeType const float const float const float const float const float const float | threshold |
| const ChargeType const float const float const float const float const float const float const float charge | const |
| const ChargeType float x[] | const |
| const float sinPhi | const { return gpu::CAMath::Sqrt(tanTheta * tanTheta + 1 / (1 - sinPhi * sinPhi)) |
| const gpu::tpccf::Row | row |
| const gpu::tpccf::Row const gpu::tpccf::Pad pad | const { return mThresholdMap.getGainCorrection(sector, row, pad) |
| const ChargeType | charge |
| const ChargeType const float | tgl = 0 |
| const ChargeType const float const float | snp |
Additional Inherited Members | |
Static Public Member Functions inherited from o2::gpu::FlatObject | |
| 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. | |
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 () |
| _____________ Memory alignment __________________________ | |
| 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 |
This container class contains all necessary corrections for the dE/dx Currently it holds the residual dE/dx correction and the track topology correction, which can be either provided by 2D-splines or by 5D-polynomials. To be able to correctly use the flat buffer functionality only one of the topology corrections should be set: 2D-splines or by 5D-polynomials! The track topology corrections are set as a nullptr for default as a member. By loading only one of them memory overhead for the classes are avoided and appropriate flat buffer sizes are used.
Definition at line 59 of file CalibdEdxContainer.h.
|
default |
Default constructor: creates an empty uninitialized object.
|
delete |
Copy constructor: disabled to avoid ambiguity. Use cloneFromObject() instead.
|
default |
Destructor.
| void CalibdEdxContainer::destroy | ( | ) |
destroy the object (release internal flat buffer)
Definition at line 63 of file CalibdEdxContainer.cxx.
|
inline |
disable loading of a correction from CCDB
| calib | calibration which will not be loaded from CCDB |
Definition at line 227 of file CalibdEdxContainer.h.
| float CalibdEdxContainer::getMaxZeroSupresssionThreshold | ( | ) | const |
Definition at line 136 of file CalibdEdxContainer.cxx.
| float CalibdEdxContainer::getMinZeroSupresssionThreshold | ( | ) | const |
Definition at line 125 of file CalibdEdxContainer.cxx.
| o2::tpc::CalibdEdxContainer::GPUd | ( | ) | const |
| sector | tpc sector |
| row | global pad row |
| o2::tpc::CalibdEdxContainer::GPUd | ( | ) | const |
| o2::tpc::CalibdEdxContainer::GPUd | ( | ) | const |
| sector | tpc sector |
| row | global pad row |
| o2::tpc::CalibdEdxContainer::GPUd | ( | ) | const & |
| stack | ID of the GEM stack |
| charge | type of the charge (qMax or qTot) |
| z | z position |
| tgl | tracking parameter tgl |
| o2::tpc::CalibdEdxContainer::GPUd | ( | ) | const |
| sector | tpc sector |
| row | global pad row |
| o2::tpc::CalibdEdxContainer::GPUd | ( | ) | const |
| region | region of the TPC |
| chargeT | type of the charge (qMax or qTot) |
| tanTheta | local inclination angle tanTheta |
| sinPhi | snp track parameter |
| z | z position |
| relPad | relative pad position of the cluster |
| relTime | relative time position of the cluster |
| threshold | zero supression threshold |
| charge | charge of the cluster |
| o2::tpc::CalibdEdxContainer::GPUd | ( | ) | const |
| region | region of the TPC |
| chargeT | type of the charge (qMax or qTot) |
| x | coordinates where the correction is evaluated |
| o2::tpc::CalibdEdxContainer::GPUd | ( | ) | const |
| sector | tpc sector |
| row | global pad row |
|
inline |
check if a correction will be loaded from CCDB
| calib | calibration which will be loaded from CCDB |
Definition at line 231 of file CalibdEdxContainer.h.
|
inline |
returns status if the polynomials correction is set
Definition at line 219 of file CalibdEdxContainer.h.
|
inline |
returns status if the spline correction is set
Definition at line 216 of file CalibdEdxContainer.h.
| void CalibdEdxContainer::loadPolTopologyCorrectionFromFile | ( | std::string_view | fileName | ) |
================================================================================================
| fileName | input file containing the correction |
Definition at line 147 of file CalibdEdxContainer.cxx.
|
inline |
| fileName | input file containing the correction |
Definition at line 184 of file CalibdEdxContainer.h.
| void CalibdEdxContainer::loadSplineTopologyCorrectionFromFile | ( | std::string_view | fileName | ) |
| fileName | input file containing the correction |
Definition at line 152 of file CalibdEdxContainer.cxx.
| void CalibdEdxContainer::loadZeroSupresssionThresholdFromFile | ( | std::string_view | fileName, |
| std::string_view | objName, | ||
| const float | minCorrectionFactor, | ||
| const float | maxCorrectionFactor | ||
| ) |
| fileName | input file containing the CalDet map |
Definition at line 177 of file CalibdEdxContainer.cxx.
move flat buffer to new location
| newBufferPtr | new buffer location |
Definition at line 54 of file CalibdEdxContainer.cxx.
|
delete |
Assignment operator: disabled to avoid ambiguity. Use cloneFromObject() instead.
set location of external flat buffer
Definition at line 76 of file CalibdEdxContainer.cxx.
|
inline |
set loading of a correction from CCDB
| calib | calibration which will be loaded from CCDB |
Definition at line 223 of file CalibdEdxContainer.h.
setting the gain map map from a CalDet
Definition at line 245 of file CalibdEdxContainer.cxx.
| void CalibdEdxContainer::setDefaultPolTopologyCorrection | ( | ) |
setting a default topology correction which just returns 1
Definition at line 163 of file CalibdEdxContainer.cxx.
| void CalibdEdxContainer::setDefaultZeroSupresssionThreshold | ( | ) |
setting default zero supression threshold map (all values are set to getMinZeroSupresssionThreshold())
| fileName | input file containing the CalDet map |
Definition at line 262 of file CalibdEdxContainer.cxx.
set future location of the flat buffer
Definition at line 99 of file CalibdEdxContainer.cxx.
| void CalibdEdxContainer::setGainMap | ( | const CalDet< float > & | gainMap, |
| const float | minGain, | ||
| const float | maxGain | ||
| ) |
setting the gain map map from a CalDet
Definition at line 250 of file CalibdEdxContainer.cxx.
| void CalibdEdxContainer::setGainMapResidual | ( | const CalDet< float > & | gainMapResidual, |
| const float | minResidualGain = 0.7f, |
||
| const float | maxResidualGain = 1.3f |
||
| ) |
setting the gain map map from a CalDet
Definition at line 256 of file CalibdEdxContainer.cxx.
| void CalibdEdxContainer::setPolTopologyCorrection | ( | const CalibdEdxTrackTopologyPol & | calibTrackTopology | ) |
set the polynomial track topology
| calibTrackTopology | polynomial track topology correction |
Definition at line 157 of file CalibdEdxContainer.cxx.
|
inline |
setting the residual dEdx correction
| residualCorr | residual gain calibration object |
Definition at line 188 of file CalibdEdxContainer.h.
| void CalibdEdxContainer::setSplineTopologyCorrection | ( | const CalibdEdxTrackTopologySpline & | calibTrackTopology | ) |
set the spline track topology
| calibTrackTopology | spline track topology correction |
Definition at line 171 of file CalibdEdxContainer.cxx.
| applyFullGainMap | if set to true the cluster charge will be corrected with the full gain map |
Definition at line 234 of file CalibdEdxContainer.h.
|
inline |
setting the zero supression threshold map from a CalDet
| thresholdMap | CalDet containing the zero supression threshold |
Definition at line 196 of file CalibdEdxContainer.h.
| void CalibdEdxContainer::setZeroSupresssionThreshold | ( | const CalDet< float > & | thresholdMap, |
| const float | minCorrectionFactor, | ||
| const float | maxCorrectionFactor | ||
| ) |
setting the zero supression threshold map from a CalDet
| thresholdMap | CalDet containing the zero supression threshold |
Definition at line 186 of file CalibdEdxContainer.cxx.
| const ChargeType o2::tpc::CalibdEdxContainer::charge |
Definition at line 137 of file CalibdEdxContainer.h.
| const ChargeType o2::tpc::CalibdEdxContainer::chargeT |
Definition at line 86 of file CalibdEdxContainer.h.
| const gpu::tpccf::Row const gpu::tpccf::Pad pad o2::tpc::CalibdEdxContainer::const |
Definition at line 86 of file CalibdEdxContainer.h.
| const ChargeType float x [] o2::tpc::CalibdEdxContainer::const |
| const float sinPhi o2::tpc::CalibdEdxContainer::const { return gpu::CAMath::Sqrt(tanTheta * tanTheta + 1 / (1 - sinPhi * sinPhi)) |
Definition at line 102 of file CalibdEdxContainer.h.
| const gpu::tpccf::Row const gpu::tpccf::Pad pad o2::tpc::CalibdEdxContainer::const { return mThresholdMap.getGainCorrection(sector, row, pad) |
Definition at line 115 of file CalibdEdxContainer.h.
| const ChargeType const float const float const float const float o2::tpc::CalibdEdxContainer::relPad |
Definition at line 86 of file CalibdEdxContainer.h.
| const ChargeType const float const float const float const float const float o2::tpc::CalibdEdxContainer::relTime |
Definition at line 86 of file CalibdEdxContainer.h.
| const gpu::tpccf::Row o2::tpc::CalibdEdxContainer::row |
Definition at line 115 of file CalibdEdxContainer.h.
| const ChargeType const float const float o2::tpc::CalibdEdxContainer::sinPhi |
Definition at line 86 of file CalibdEdxContainer.h.
| const ChargeType const float const float o2::tpc::CalibdEdxContainer::snp |
Definition at line 137 of file CalibdEdxContainer.h.
| const ChargeType const float o2::tpc::CalibdEdxContainer::tanTheta |
Definition at line 86 of file CalibdEdxContainer.h.
| const ChargeType const float o2::tpc::CalibdEdxContainer::tgl = 0 |
Definition at line 137 of file CalibdEdxContainer.h.
| const ChargeType const float const float const float const float const float const float o2::tpc::CalibdEdxContainer::threshold |
Definition at line 86 of file CalibdEdxContainer.h.
| const ChargeType const float const float const float o2::tpc::CalibdEdxContainer::z |
Definition at line 86 of file CalibdEdxContainer.h.