Project
Loading...
Searching...
No Matches
o2::mch::Pads Class Reference

#include <PadsPEM.h>

Public Types

enum class  PadMode { xydxdyMode , xyInfSupMode }
 

Public Member Functions

 Pads (int N, int chId, PadMode mode=PadMode::xydxdyMode)
 
 Pads (const Pads &pads, PadMode mode_)
 
 Pads (const Pads *pads, int size)
 
 Pads (const Pads &pads, const Groups_t *mask)
 
 Pads (const Pads *pads0, const Pads *pads1, PadMode mode)
 
 Pads (const double *x_, const double *y_, const double *dx_, const double *dy_, const double *q_, const short *cathode, const Mask_t *saturate_, short cathID, int chId, PadIdx_t *mapCathPadIdxToPadIdx, int nAllPads)
 
 Pads (const double *x_, const double *y_, const double *dx_, const double *dy_, const double *q_, const short *cathode, const Mask_t *saturate_, int chId, int nAllPads)
 
 Pads (double *x_, double *y_, double *dx_, double *dy_, int chId, int nPads_)
 
int getNbrOfPads () const
 
int getNbrOfObsPads () const
 
const double * getX () const
 
const double * getY () const
 
const double * getDX () const
 
const double * getDY () const
 
const double * getXInf () const
 
const double * getYInf () const
 
const double * getXSup () const
 
const double * getYSup () const
 
const double * getCharges () const
 
const Mask_tgetSaturates () const
 
const Mask_tgetCathodes () const
 
double getTotalCharge () const
 
double updateTotalCharge ()
 
double getMeanTotalCharge ()
 
int getChamberId () const
 
void setCharges (double c)
 
void setCharges (double *q_, int n)
 
void setCathodes (Mask_t cath_)
 
void setSaturate (Mask_t val)
 
PadsselectPads (int *index, int k)
 
int removePads (double qCut)
 
void padBoundsToCenter (const Pads &pads)
 
void padCenterToBounds (const Pads &pads)
 
void padBoundsToCenter ()
 
void padCenterToBounds ()
 
void normalizeCharges ()
 
PadsrefineAll ()
 
void refineLocalMax (Pads &localMax, std::vector< PadIdx_t > &localMaxIdx)
 
void refineLocalMaxAndUpdateCij (const Pads &pads, std::vector< PadIdx_t > &localMaxIdx, double Cij[])
 
PadsaddBoundaryPads ()
 
PadIdx_tgetFirstNeighbors ()
 
PadIdx_tbuildKFirstsNeighbors (int kernelSize)
 
PadsextractLocalMax (std::vector< PadIdx_t > &localMaxIdx, double dxMinPadSize, double dyMinPadSize)
 
PadsextractLocalMaxOnCoarsePads (std::vector< PadIdx_t > &localMaxIdx)
 
PadsextractLocalMaxOnCoarsePads_Remanent (std::vector< PadIdx_t > &localMaxIdx, double dxMinPadSize, double dyMinPadSize)
 
PadsclipOnLocalMax (bool extractLocalMax)
 
int addIsolatedPadInGroups (Mask_t *cathToGrp, Mask_t *grpToGrp, int nGroups)
 
 ~Pads ()
 

Static Public Member Functions

static void printNeighbors (const PadIdx_t *neigh, int N)
 
static void printPads (const char *title, const Pads &pads)
 
static int getNbrOfPads (const Pads *pads)
 

Public Attributes

PadMode mode = PadMode::xydxdyMode
 

Static Public Attributes

static constexpr double epsilonGeometry
 

Detailed Description

Definition at line 47 of file PadsPEM.h.

Member Enumeration Documentation

◆ PadMode

enum class o2::mch::Pads::PadMode
strong
Enumerator
xydxdyMode 

x, y, dx, dy pad coordinates

xyInfSupMode 

xInf=x, xSup=dx, yInf=y, ySup=dy pad coordinates

Definition at line 50 of file PadsPEM.h.

Constructor & Destructor Documentation

◆ Pads() [1/8]

o2::mch::Pads::Pads ( int  N,
int  chId,
PadMode  mode = PadMode::xydxdyMode 
)

Definition at line 354 of file PadsPEM.cxx.

◆ Pads() [2/8]

o2::mch::Pads::Pads ( const Pads pads,
PadMode  mode_ 
)

Definition at line 432 of file PadsPEM.cxx.

◆ Pads() [3/8]

o2::mch::Pads::Pads ( const Pads pads,
int  size 
)

Definition at line 410 of file PadsPEM.cxx.

◆ Pads() [4/8]

o2::mch::Pads::Pads ( const Pads pads,
const Groups_t mask 
)

Definition at line 463 of file PadsPEM.cxx.

◆ Pads() [5/8]

o2::mch::Pads::Pads ( const Pads pads0,
const Pads pads1,
PadMode  mode 
)

Definition at line 584 of file PadsPEM.cxx.

◆ Pads() [6/8]

o2::mch::Pads::Pads ( const double *  x_,
const double *  y_,
const double *  dx_,
const double *  dy_,
const double *  q_,
const short cathode,
const Mask_t saturate_,
short  cathID,
int  chId,
PadIdx_t mapCathPadIdxToPadIdx,
int  nAllPads 
)

Definition at line 523 of file PadsPEM.cxx.

◆ Pads() [7/8]

o2::mch::Pads::Pads ( const double *  x_,
const double *  y_,
const double *  dx_,
const double *  dy_,
const double *  q_,
const short cathode,
const Mask_t saturate_,
int  chId,
int  nAllPads 
)

Definition at line 556 of file PadsPEM.cxx.

◆ Pads() [8/8]

o2::mch::Pads::Pads ( double *  x_,
double *  y_,
double *  dx_,
double *  dy_,
int  chId,
int  nPads_ 
)

Definition at line 502 of file PadsPEM.cxx.

◆ ~Pads()

o2::mch::Pads::~Pads ( )

Definition at line 2274 of file PadsPEM.cxx.

Member Function Documentation

◆ addBoundaryPads()

Pads * o2::mch::Pads::addBoundaryPads ( )

Definition at line 193 of file PadsPEM.cxx.

◆ addIsolatedPadInGroups()

int o2::mch::Pads::addIsolatedPadInGroups ( Mask_t cathToGrp,
Mask_t grpToGrp,
int  nGroups 
)

Definition at line 847 of file PadsPEM.cxx.

◆ buildKFirstsNeighbors()

PadIdx_t * o2::mch::Pads::buildKFirstsNeighbors ( int  kernelSize)

Definition at line 139 of file PadsPEM.cxx.

◆ clipOnLocalMax()

Pads * o2::mch::Pads::clipOnLocalMax ( bool  extractLocalMax)

???? delete[] neigh;

Definition at line 2070 of file PadsPEM.cxx.

◆ extractLocalMax()

Pads * o2::mch::Pads::extractLocalMax ( std::vector< PadIdx_t > &  localMaxIdx,
double  dxMinPadSize,
double  dyMinPadSize 
)

???? delete[] neigh;

Definition at line 1742 of file PadsPEM.cxx.

◆ extractLocalMaxOnCoarsePads()

Pads * o2::mch::Pads::extractLocalMaxOnCoarsePads ( std::vector< PadIdx_t > &  localMaxIdx)

???? delete[] neigh;

Definition at line 1235 of file PadsPEM.cxx.

◆ extractLocalMaxOnCoarsePads_Remanent()

Pads * o2::mch::Pads::extractLocalMaxOnCoarsePads_Remanent ( std::vector< PadIdx_t > &  localMaxIdx,
double  dxMinPadSize,
double  dyMinPadSize 
)

???? delete[] neigh;

Definition at line 1449 of file PadsPEM.cxx.

◆ getCathodes()

const Mask_t * o2::mch::Pads::getCathodes ( ) const
inline

Definition at line 101 of file PadsPEM.h.

◆ getChamberId()

int o2::mch::Pads::getChamberId ( ) const
inline

Definition at line 106 of file PadsPEM.h.

◆ getCharges()

const double * o2::mch::Pads::getCharges ( ) const
inline

Definition at line 99 of file PadsPEM.h.

◆ getDX()

const double * o2::mch::Pads::getDX ( ) const
inline

Definition at line 93 of file PadsPEM.h.

◆ getDY()

const double * o2::mch::Pads::getDY ( ) const
inline

Definition at line 94 of file PadsPEM.h.

◆ getFirstNeighbors()

PadIdx_t * o2::mch::Pads::getFirstNeighbors ( )

Definition at line 838 of file PadsPEM.cxx.

◆ getMeanTotalCharge()

double o2::mch::Pads::getMeanTotalCharge ( )

Definition at line 764 of file PadsPEM.cxx.

◆ getNbrOfObsPads()

int o2::mch::Pads::getNbrOfObsPads ( ) const
inline

Definition at line 90 of file PadsPEM.h.

◆ getNbrOfPads() [1/2]

int o2::mch::Pads::getNbrOfPads ( ) const
inline

Definition at line 89 of file PadsPEM.h.

◆ getNbrOfPads() [2/2]

static int o2::mch::Pads::getNbrOfPads ( const Pads pads)
inlinestatic

Definition at line 63 of file PadsPEM.h.

◆ getSaturates()

const Mask_t * o2::mch::Pads::getSaturates ( ) const
inline

Definition at line 100 of file PadsPEM.h.

◆ getTotalCharge()

double o2::mch::Pads::getTotalCharge ( ) const
inline

Definition at line 102 of file PadsPEM.h.

◆ getX()

const double * o2::mch::Pads::getX ( ) const
inline

Definition at line 91 of file PadsPEM.h.

◆ getXInf()

const double * o2::mch::Pads::getXInf ( ) const
inline

Definition at line 95 of file PadsPEM.h.

◆ getXSup()

const double * o2::mch::Pads::getXSup ( ) const
inline

Definition at line 97 of file PadsPEM.h.

◆ getY()

const double * o2::mch::Pads::getY ( ) const
inline

Definition at line 92 of file PadsPEM.h.

◆ getYInf()

const double * o2::mch::Pads::getYInf ( ) const
inline

Definition at line 96 of file PadsPEM.h.

◆ getYSup()

const double * o2::mch::Pads::getYSup ( ) const
inline

Definition at line 98 of file PadsPEM.h.

◆ normalizeCharges()

void o2::mch::Pads::normalizeCharges ( )

Definition at line 830 of file PadsPEM.cxx.

◆ padBoundsToCenter() [1/2]

void o2::mch::Pads::padBoundsToCenter ( )

Definition at line 89 of file PadsPEM.cxx.

◆ padBoundsToCenter() [2/2]

void o2::mch::Pads::padBoundsToCenter ( const Pads pads)

Definition at line 35 of file PadsPEM.cxx.

◆ padCenterToBounds() [1/2]

void o2::mch::Pads::padCenterToBounds ( )

Definition at line 69 of file PadsPEM.cxx.

◆ padCenterToBounds() [2/2]

void o2::mch::Pads::padCenterToBounds ( const Pads pads)

Definition at line 52 of file PadsPEM.cxx.

◆ printNeighbors()

void o2::mch::Pads::printNeighbors ( const PadIdx_t neigh,
int  N 
)
static

Definition at line 2237 of file PadsPEM.cxx.

◆ printPads()

void o2::mch::Pads::printPads ( const char title,
const Pads pads 
)
static

Definition at line 2251 of file PadsPEM.cxx.

◆ refineAll()

Pads * o2::mch::Pads::refineAll ( )

Definition at line 1170 of file PadsPEM.cxx.

◆ refineLocalMax()

void o2::mch::Pads::refineLocalMax ( Pads localMax,
std::vector< PadIdx_t > &  localMaxIdx 
)

Definition at line 1081 of file PadsPEM.cxx.

◆ refineLocalMaxAndUpdateCij()

void o2::mch::Pads::refineLocalMaxAndUpdateCij ( const Pads pads,
std::vector< PadIdx_t > &  localMaxIdx,
double  Cij[] 
)

Definition at line 965 of file PadsPEM.cxx.

◆ removePads()

int o2::mch::Pads::removePads ( double  qCut)

Definition at line 805 of file PadsPEM.cxx.

◆ selectPads()

Pads * o2::mch::Pads::selectPads ( int index,
int  k 
)

Definition at line 658 of file PadsPEM.cxx.

◆ setCathodes()

void o2::mch::Pads::setCathodes ( Mask_t  cath_)

Definition at line 790 of file PadsPEM.cxx.

◆ setCharges() [1/2]

void o2::mch::Pads::setCharges ( double *  q_,
int  n 
)

Definition at line 784 of file PadsPEM.cxx.

◆ setCharges() [2/2]

void o2::mch::Pads::setCharges ( double  c)

Definition at line 778 of file PadsPEM.cxx.

◆ setSaturate()

void o2::mch::Pads::setSaturate ( Mask_t  val)

Definition at line 792 of file PadsPEM.cxx.

◆ updateTotalCharge()

double o2::mch::Pads::updateTotalCharge ( )

Definition at line 758 of file PadsPEM.cxx.

Member Data Documentation

◆ epsilonGeometry

constexpr double o2::mch::Pads::epsilonGeometry
staticconstexpr
Initial value:
=
1.0e-04

Definition at line 54 of file PadsPEM.h.

◆ mode

PadMode o2::mch::Pads::mode = PadMode::xydxdyMode

Definition at line 58 of file PadsPEM.h.


The documentation for this class was generated from the following files: