#include <PixCoords2x1.h>
Public Types | |
ROW = 0 | |
COL | |
ORT | |
X = 0 | |
Y | |
Z | |
R000 = 0 | |
R090 | |
R180 | |
R270 | |
UM = 0 | |
PIX | |
NCols2x1 = Psana::CsPad::ColumnsPerASIC | |
NRows2x1 = Psana::CsPad::MaxRowsPerASIC * 2 | |
NRowsASIC = Psana::CsPad::MaxRowsPerASIC | |
enum | ARRAXIS { ROW = 0, COL, ORT } |
enum | COORDINATE { X = 0, Y, Z } |
enum | ORIENTATION { R000 = 0, R090, R180, R270 } |
enum | UNITS { UM = 0, PIX } |
enum | { NCols2x1 = Psana::CsPad::ColumnsPerASIC } |
enum | { NRows2x1 = Psana::CsPad::MaxRowsPerASIC * 2 } |
enum | { NRowsASIC = Psana::CsPad::MaxRowsPerASIC } |
Public Member Functions | |
PixCoords2x1 () | |
No parameters needed; everything is defined through the fixed 2x1 chip geometry. | |
virtual | ~PixCoords2x1 () |
void | fill_pix_coords_2x1 () |
double | getPixCoorRot000_um (COORDINATE icoor, unsigned row, unsigned col) |
double | getPixCoorRot090_um (COORDINATE icoor, unsigned row, unsigned col) |
double | getPixCoorRot180_um (COORDINATE icoor, unsigned row, unsigned col) |
double | getPixCoorRot270_um (COORDINATE icoor, unsigned row, unsigned col) |
double | getPixCoorRot000_pix (COORDINATE icoor, unsigned row, unsigned col) |
double | getPixCoorRot090_pix (COORDINATE icoor, unsigned row, unsigned col) |
double | getPixCoorRot180_pix (COORDINATE icoor, unsigned row, unsigned col) |
double | getPixCoorRot270_pix (COORDINATE icoor, unsigned row, unsigned col) |
double | getPixCoorRotN90_um (ORIENTATION n90, COORDINATE icoor, unsigned row, unsigned col) |
double | getPixCoorRotN90_pix (ORIENTATION n90, COORDINATE icoor, unsigned row, unsigned col) |
double | getPixCoorRotN90 (UNITS units, ORIENTATION n90, COORDINATE icoor, unsigned row, unsigned col) |
double | getXCenterOffset_um (ORIENTATION n90) |
double | getYCenterOffset_um (ORIENTATION n90) |
void | print_member_data () |
void | print_selected_coords_2x1 (ARRAXIS arraxis) |
Static Public Member Functions | |
static ORIENTATION | getOrientation (double angle) |
static size_t | getNCols (ORIENTATION n90) |
static size_t | getNRows (ORIENTATION n90) |
Defines the X,Y,Z pixel coordinates for single 2x1 in its own (ONLINE) frame: X coordinate is directed along rows from 0 to 388 (from top to botton for 0 rotation angle). Y coordinate is directed opposite columns from 184 to 0 (from left to right for 0 rotation angle). getPixCoorRot...(...) methods return these coordinates for rotated by N*90 degree 2x1 in um(micrometer) or pixels.
Rows and columns are defined like in ONLINE: /reg/g/psdm/sw/external/lusi-xtc/2.12.0a/x86_64-rhel5-gcc41-opt/pdsdata/cspad/ElementIterator.hh, Detector.hh
This software was developed for the LCLS project. If you use all or part of it, please give an appropriate acknowledgment.
Definition at line 63 of file PixCoords2x1.h.
anonymous enum |
anonymous enum |
anonymous enum |
CSPadPixCoords::PixCoords2x1::PixCoords2x1 | ( | ) |
No parameters needed; everything is defined through the fixed 2x1 chip geometry.
Fills/holds/provides access to the arrays of row, column, and ortogonal coordinate of 2x1 pixels
Definition at line 48 of file PixCoords2x1.cpp.
References fill_pix_coords_2x1(), PSCalib::CSPadCalibPars::getColSize_um(), PSCalib::CSPadCalibPars::getColUmToPix(), PSCalib::CSPadCalibPars::getGapSize_um(), PSCalib::CSPadCalibPars::getOrtUmToPix(), PSCalib::CSPadCalibPars::getRowSize_um(), PSCalib::CSPadCalibPars::getRowUmToPix(), NCols2x1, and NRows2x1.
CSPadPixCoords::PixCoords2x1::~PixCoords2x1 | ( | ) | [virtual] |
Definition at line 73 of file PixCoords2x1.cpp.
void CSPadPixCoords::PixCoords2x1::fill_pix_coords_2x1 | ( | ) |
Definition at line 79 of file PixCoords2x1.cpp.
References NCols2x1, NRows2x1, and NRowsASIC.
Referenced by PixCoords2x1().
size_t CSPadPixCoords::PixCoords2x1::getNCols | ( | ORIENTATION | n90 | ) | [static] |
size_t CSPadPixCoords::PixCoords2x1::getNRows | ( | ORIENTATION | n90 | ) | [static] |
PixCoords2x1::ORIENTATION CSPadPixCoords::PixCoords2x1::getOrientation | ( | double | angle | ) | [static] |
Definition at line 282 of file PixCoords2x1.cpp.
References R000, R090, R180, and R270.
Referenced by CSPadPixCoords::PixCoordsCSPad::fillOneQuadCoordsInCSPad(), CSPadPixCoords::PixCoordsCSPad::fillOneQuadTiltedCoordsInCSPad(), CSPadPixCoords::PixCoordsCSPad2x2::fillOneSectionInDet(), CSPadPixCoords::PixCoordsQuad::fillOneSectionInQuad(), CSPadPixCoords::PixCoordsCSPad2x2::fillOneSectionTiltedInDet(), and CSPadPixCoords::PixCoordsQuad::fillOneSectionTiltedInQuad().
double CSPadPixCoords::PixCoords2x1::getPixCoorRot000_pix | ( | COORDINATE | icoor, | |
unsigned | row, | |||
unsigned | col | |||
) |
Definition at line 204 of file PixCoords2x1.cpp.
References getPixCoorRot000_um(), X, Y, and Z.
Referenced by getPixCoorRotN90_pix().
double CSPadPixCoords::PixCoords2x1::getPixCoorRot000_um | ( | COORDINATE | icoor, | |
unsigned | row, | |||
unsigned | col | |||
) |
Access methods return the coordinate for indicated axis, 2x1 row and column indexes after the 2x1 rotation by n*90 degree. The pixel coordinates can be returned in um(micrometer) and pix(pixel).
Definition at line 137 of file PixCoords2x1.cpp.
Referenced by getPixCoorRot000_pix(), and getPixCoorRotN90_um().
double CSPadPixCoords::PixCoords2x1::getPixCoorRot090_pix | ( | COORDINATE | icoor, | |
unsigned | row, | |||
unsigned | col | |||
) |
Definition at line 217 of file PixCoords2x1.cpp.
References getPixCoorRot090_um(), X, Y, and Z.
Referenced by getPixCoorRotN90_pix().
double CSPadPixCoords::PixCoords2x1::getPixCoorRot090_um | ( | COORDINATE | icoor, | |
unsigned | row, | |||
unsigned | col | |||
) |
Definition at line 150 of file PixCoords2x1.cpp.
Referenced by getPixCoorRot090_pix(), and getPixCoorRotN90_um().
double CSPadPixCoords::PixCoords2x1::getPixCoorRot180_pix | ( | COORDINATE | icoor, | |
unsigned | row, | |||
unsigned | col | |||
) |
Definition at line 230 of file PixCoords2x1.cpp.
References getPixCoorRot180_um(), X, Y, and Z.
Referenced by getPixCoorRotN90_pix().
double CSPadPixCoords::PixCoords2x1::getPixCoorRot180_um | ( | COORDINATE | icoor, | |
unsigned | row, | |||
unsigned | col | |||
) |
Definition at line 163 of file PixCoords2x1.cpp.
Referenced by getPixCoorRot180_pix(), and getPixCoorRotN90_um().
double CSPadPixCoords::PixCoords2x1::getPixCoorRot270_pix | ( | COORDINATE | icoor, | |
unsigned | row, | |||
unsigned | col | |||
) |
Definition at line 243 of file PixCoords2x1.cpp.
References getPixCoorRot270_um(), X, Y, and Z.
Referenced by getPixCoorRotN90_pix().
double CSPadPixCoords::PixCoords2x1::getPixCoorRot270_um | ( | COORDINATE | icoor, | |
unsigned | row, | |||
unsigned | col | |||
) |
Definition at line 176 of file PixCoords2x1.cpp.
Referenced by getPixCoorRot270_pix(), and getPixCoorRotN90_um().
double CSPadPixCoords::PixCoords2x1::getPixCoorRotN90 | ( | UNITS | units, | |
ORIENTATION | n90, | |||
COORDINATE | icoor, | |||
unsigned | row, | |||
unsigned | col | |||
) |
Definition at line 270 of file PixCoords2x1.cpp.
References getPixCoorRotN90_pix(), getPixCoorRotN90_um(), PIX, and UM.
double CSPadPixCoords::PixCoords2x1::getPixCoorRotN90_pix | ( | ORIENTATION | n90, | |
COORDINATE | icoor, | |||
unsigned | row, | |||
unsigned | col | |||
) |
Definition at line 256 of file PixCoords2x1.cpp.
References getPixCoorRot000_pix(), getPixCoorRot090_pix(), getPixCoorRot180_pix(), getPixCoorRot270_pix(), R000, R090, R180, and R270.
Referenced by getPixCoorRotN90().
double CSPadPixCoords::PixCoords2x1::getPixCoorRotN90_um | ( | ORIENTATION | n90, | |
COORDINATE | icoor, | |||
unsigned | row, | |||
unsigned | col | |||
) |
Definition at line 189 of file PixCoords2x1.cpp.
References getPixCoorRot000_um(), getPixCoorRot090_um(), getPixCoorRot180_um(), getPixCoorRot270_um(), R000, R090, R180, and R270.
Referenced by CSPadPixCoords::PixCoordsCSPad2x2::fillOneSectionInDet(), CSPadPixCoords::PixCoordsQuad::fillOneSectionInQuad(), CSPadPixCoords::PixCoordsCSPad2x2::fillOneSectionTiltedInDet(), CSPadPixCoords::PixCoordsQuad::fillOneSectionTiltedInQuad(), and getPixCoorRotN90().
double CSPadPixCoords::PixCoords2x1::getXCenterOffset_um | ( | ORIENTATION | n90 | ) |
Definition at line 321 of file PixCoords2x1.cpp.
References R000, R090, R180, and R270.
Referenced by CSPadPixCoords::PixCoordsCSPad2x2::fillOneSectionInDet(), CSPadPixCoords::PixCoordsQuad::fillOneSectionInQuad(), CSPadPixCoords::PixCoordsCSPad2x2::fillOneSectionTiltedInDet(), and CSPadPixCoords::PixCoordsQuad::fillOneSectionTiltedInQuad().
double CSPadPixCoords::PixCoords2x1::getYCenterOffset_um | ( | ORIENTATION | n90 | ) |
Definition at line 335 of file PixCoords2x1.cpp.
References R000, R090, R180, and R270.
Referenced by CSPadPixCoords::PixCoordsCSPad2x2::fillOneSectionInDet(), CSPadPixCoords::PixCoordsQuad::fillOneSectionInQuad(), CSPadPixCoords::PixCoordsCSPad2x2::fillOneSectionTiltedInDet(), and CSPadPixCoords::PixCoordsQuad::fillOneSectionTiltedInQuad().
void CSPadPixCoords::PixCoords2x1::print_member_data | ( | ) |
void CSPadPixCoords::PixCoords2x1::print_selected_coords_2x1 | ( | ARRAXIS | arraxis | ) |