Project
Loading...
Searching...
No Matches
o2::mch::mapping::impl3::CathodeSegmentation Class Reference

#include <CathodeSegmentationImpl3.h>

Public Types

using Point = boost::geometry::model::point< double, 2, boost::geometry::cs::cartesian >
 
using Box = boost::geometry::model::box< Point >
 
using Value = std::pair< Box, unsigned >
 

Public Member Functions

 CathodeSegmentation (int segType, bool isBendingPlane, std::vector< PadGroup > padGroups, std::vector< PadGroupType > padGroupTypes, std::vector< std::pair< float, float > > padSizes)
 
std::vector< intgetCatPadIndexs (int dualSampaIds) const
 Return the list of catPadIndexs for the pads of the given dual sampa.
 
std::vector< intgetCatPadIndexs (double xmin, double ymin, double xmax, double ymax) const
 Return the list of catPadIndexs for the pads contained in the box {xmin,ymin,xmax,ymax}.
 
std::vector< intgetNeighbouringCatPadIndexs (int catPadIndex) const
 Return the list of catPadIndexs of the pads which are neighbours to catPadIndex.
 
std::set< intdualSampaIds () const
 
int findPadByPosition (double x, double y) const
 
int findPadByFEE (int dualSampaId, int dualSampaChannel) const
 
bool hasPadByPosition (double x, double y) const
 
bool hasPadByFEE (int dualSampaId, int dualSampaChannel) const
 
double padPositionX (int catPadIndex) const
 
double padPositionY (int catPadIndex) const
 
double padSizeX (int catPadIndex) const
 
double padSizeY (int catPadIndex) const
 
int padDualSampaId (int catPadIndex) const
 
int padDualSampaChannel (int catPadIndex) const
 
bool isValid (int catPadIndex) const
 

Static Public Attributes

static constexpr int InvalidCatPadIndex {-1}
 

Friends

std::ostream & operator<< (std::ostream &os, const CathodeSegmentation &seg)
 

Detailed Description

Definition at line 34 of file CathodeSegmentationImpl3.h.

Member Typedef Documentation

◆ Box

using o2::mch::mapping::impl3::CathodeSegmentation::Box = boost::geometry::model::box<Point>

Definition at line 40 of file CathodeSegmentationImpl3.h.

◆ Point

using o2::mch::mapping::impl3::CathodeSegmentation::Point = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>

Definition at line 39 of file CathodeSegmentationImpl3.h.

◆ Value

Definition at line 41 of file CathodeSegmentationImpl3.h.

Constructor & Destructor Documentation

◆ CathodeSegmentation()

o2::mch::mapping::impl3::CathodeSegmentation::CathodeSegmentation ( int  segType,
bool  isBendingPlane,
std::vector< PadGroup padGroups,
std::vector< PadGroupType padGroupTypes,
std::vector< std::pair< float, float > >  padSizes 
)

Definition at line 107 of file CathodeSegmentationImpl3.cxx.

Member Function Documentation

◆ dualSampaIds()

std::set< int > o2::mch::mapping::impl3::CathodeSegmentation::dualSampaIds ( ) const
inline

Definition at line 55 of file CathodeSegmentationImpl3.h.

◆ findPadByFEE()

int o2::mch::mapping::impl3::CathodeSegmentation::findPadByFEE ( int  dualSampaId,
int  dualSampaChannel 
) const

Definition at line 203 of file CathodeSegmentationImpl3.cxx.

◆ findPadByPosition()

int o2::mch::mapping::impl3::CathodeSegmentation::findPadByPosition ( double  x,
double  y 
) const

Definition at line 177 of file CathodeSegmentationImpl3.cxx.

◆ getCatPadIndexs() [1/2]

std::vector< int > o2::mch::mapping::impl3::CathodeSegmentation::getCatPadIndexs ( double  xmin,
double  ymin,
double  xmax,
double  ymax 
) const

Return the list of catPadIndexs for the pads contained in the box {xmin,ymin,xmax,ymax}.

Definition at line 139 of file CathodeSegmentationImpl3.cxx.

◆ getCatPadIndexs() [2/2]

std::vector< int > o2::mch::mapping::impl3::CathodeSegmentation::getCatPadIndexs ( int  dualSampaIds) const

Return the list of catPadIndexs for the pads of the given dual sampa.

Definition at line 122 of file CathodeSegmentationImpl3.cxx.

◆ getNeighbouringCatPadIndexs()

std::vector< int > o2::mch::mapping::impl3::CathodeSegmentation::getNeighbouringCatPadIndexs ( int  catPadIndex) const

Return the list of catPadIndexs of the pads which are neighbours to catPadIndex.

Definition at line 151 of file CathodeSegmentationImpl3.cxx.

◆ hasPadByFEE()

bool o2::mch::mapping::impl3::CathodeSegmentation::hasPadByFEE ( int  dualSampaId,
int  dualSampaChannel 
) const
inline

Definition at line 63 of file CathodeSegmentationImpl3.h.

◆ hasPadByPosition()

bool o2::mch::mapping::impl3::CathodeSegmentation::hasPadByPosition ( double  x,
double  y 
) const
inline

Definition at line 61 of file CathodeSegmentationImpl3.h.

◆ isValid()

bool o2::mch::mapping::impl3::CathodeSegmentation::isValid ( int  catPadIndex) const

Definition at line 165 of file CathodeSegmentationImpl3.cxx.

◆ padDualSampaChannel()

int o2::mch::mapping::impl3::CathodeSegmentation::padDualSampaChannel ( int  catPadIndex) const

Definition at line 233 of file CathodeSegmentationImpl3.cxx.

◆ padDualSampaId()

int o2::mch::mapping::impl3::CathodeSegmentation::padDualSampaId ( int  catPadIndex) const

Definition at line 231 of file CathodeSegmentationImpl3.cxx.

◆ padPositionX()

double o2::mch::mapping::impl3::CathodeSegmentation::padPositionX ( int  catPadIndex) const

Definition at line 213 of file CathodeSegmentationImpl3.cxx.

◆ padPositionY()

double o2::mch::mapping::impl3::CathodeSegmentation::padPositionY ( int  catPadIndex) const

Definition at line 220 of file CathodeSegmentationImpl3.cxx.

◆ padSizeX()

double o2::mch::mapping::impl3::CathodeSegmentation::padSizeX ( int  catPadIndex) const

Definition at line 227 of file CathodeSegmentationImpl3.cxx.

◆ padSizeY()

double o2::mch::mapping::impl3::CathodeSegmentation::padSizeY ( int  catPadIndex) const

Definition at line 229 of file CathodeSegmentationImpl3.cxx.

Friends And Related Symbol Documentation

◆ operator<<

std::ostream & operator<< ( std::ostream &  os,
const CathodeSegmentation seg 
)
friend

Definition at line 256 of file CathodeSegmentationImpl3.cxx.

Member Data Documentation

◆ InvalidCatPadIndex

constexpr int o2::mch::mapping::impl3::CathodeSegmentation::InvalidCatPadIndex {-1}
staticconstexpr

Definition at line 37 of file CathodeSegmentationImpl3.h.


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