1 #ifndef Geometry_MTDGeometryBuilder_RectangularMTDTopology_H 2 #define Geometry_MTDGeometryBuilder_RectangularMTDTopology_H 49 int BIG_PIX_PER_ROC_X,
50 int BIG_PIX_PER_ROC_Y,
62 setOffset(BIG_PIX_PER_ROC_X, BIG_PIX_PER_ROC_Y, ROWS_PER_ROC, COLS_PER_ROC);
66 void setOffset(
const int& BIG_PIX_PER_ROC_X,
67 const int& BIG_PIX_PER_ROC_Y,
68 const int& ROWS_PER_ROC,
69 const int& COLS_PER_ROC);
77 std::pair<float, float>
p =
pixel(lp);
95 std::pair<float, float> p =
pixel(lp);
103 std::pair<float, float> p =
pixel(mlp);
120 float localX(
const float mpX)
const override;
121 float localY(
const float mpY)
const override;
134 int iybin0 = iybin % 52;
135 return ((iybin0 == 0) | (iybin0 == 51));
bool isItEdgePixelInX(int ixbin) const override
Point3DBase< Scalar, LocalTag > LocalPoint
bool isItBigPixelInX(const int ixbin) const override
float localX(const float mpX) const override
LocalError localError(const MeasurementPoint &, const MeasurementError &) const override
static std::pair< int, int > channelToPixel(int ch)
int colsperroc() const override
int ncolumns() const override
bool containsBigPixelInY(int iymin, int iymax) const override
bool isItBigPixelInY(const int iybin) const override
std::pair< float, float > pitch() const override
int nrows() const override
int channel(const LocalPoint &lp) const override
Measurement2DPoint MeasurementPoint
Measurement points are two-dimensional by default.
static int pixelToChannel(int row, int col)
LocalPoint localPosition(const MeasurementPoint &mp) const override
LocalPoint pixelToModuleLocalPoint(const LocalPoint &plp, int channel) const
int rocsX() const override
std::pair< float, float > pixel(const LocalPoint &p) const override
int rocsY() const override
LocalPoint pixelToModuleLocalPoint(const LocalPoint &plp, int row, int col) const
bool isItEdgePixel(int ixbin, int iybin) const override
MeasurementPoint measurementPosition(const LocalPoint &lp) const override
bool containsBigPixelInX(int ixmin, int ixmax) const override
LocalPoint moduleToPixelLocalPoint(const LocalPoint &mlp) const
void setOffset(const int &BIG_PIX_PER_ROC_X, const int &BIG_PIX_PER_ROC_Y, const int &ROWS_PER_ROC, const int &COLS_PER_ROC)
float localY(const float mpY) const override
bool isItEdgePixelInY(int iybin) const override
MeasurementError measurementError(const LocalPoint &, const LocalError &) const override
RectangularMTDTopology(int nrows, int ncols, float pitchx, float pitchy, bool upgradeGeometry, int ROWS_PER_ROC, int COLS_PER_ROC, int BIG_PIX_PER_ROC_X, int BIG_PIX_PER_ROC_Y, int ROCS_X, int ROCS_Y)
int rowsperroc() const override