27#ifndef AliceO2_TPC_PadRegionInfo_H 
   28#define AliceO2_TPC_PadRegionInfo_H 
   57                const unsigned char partition,
 
   58                const unsigned char numberOfPadRows,
 
   59                const float padHeight,
 
   61                const float radiusFirstRow,
 
   62                const unsigned char rowOffset,
 
   64                const unsigned char globalRowOffset);
 
  109    return mPadsPerRow[padPos.getRow() - mGlobalRowOffset];
 
 
  129    return localX - mRadiusFirstRow - 
border > 0.f && localX - mRadiusFirstRow < (mNumberOfPadRows + 1) * mPadHeight + 
border;
 
 
  132#ifndef GPUCA_ALIGPUCODE  
  136  const PadPos findPad(const LocalPosition3D& pos) const
 
 
  165    const float localYfactor = (
side == 
Side::A) ? -1.f : 1.f;
 
  166    const unsigned int row = (localX - mRadiusFirstRow) * mInvPadHeight;
 
  167    if (
row >= mNumberOfPadRows) {
 
  172    const float padfloat = (0.5f * npads * mPadWidth - localYfactor * localY) * mInvPadWidth;
 
  176    const unsigned int pad = 
static_cast<unsigned int>(padfloat);
 
 
  186  float mPadHeight{0.f};             
 
  187  float mPadWidth{0.f};              
 
  188  float mInvPadHeight{0.f};          
 
  189  float mInvPadWidth{0.f};           
 
  190  float mRadiusFirstRow{0.f};        
 
  192  unsigned short mNumberOfPads{0};   
 
  193  unsigned char mPartition{0};       
 
  194  unsigned char mRegion{0};          
 
  195  unsigned char mNumberOfPadRows{0}; 
 
  197  unsigned char mRowOffset{0}; 
 
  199  unsigned char mGlobalRowOffset{0}; 
 
  203  std::vector<unsigned char> mPadsPerRow; 
 
 
PadRegionInfo()=default
default constructor
 
const PadPos findPad(const float localX, const float localY, const Side side) const
 
unsigned char getPadsInRow(const PadPos &padPos) const
 
unsigned char getPadsInRow(const int row) const
 
unsigned char getNumberOfPadRows() const
 
float getRadiusFirstRow() const
 
unsigned short getNumberOfPads() const
 
const PadPos findPad(const LocalPosition3D &pos) const
 
bool isInRegion(float localX, float border=0.f) const
 
unsigned char getPadsInRowRegion(const int row) const
 
float getXhelper() const
Helper variable for geometry calculations.
 
unsigned char getGlobalRowOffset() const
 
unsigned char getRegion() const
 
const PadPos findPad(const LocalPosition2D &pos, const Side side=Side::A) const
 
float getPadWidth() const
 
unsigned char getRowOffset() const
Local row offset for geometry calculations.
 
unsigned char getPartition() const
 
float getPadHeight() const
 
GLint GLint GLsizei GLint border
 
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...