PSCalib::SegGeometryCspad2x1V1 Class Reference
[PSCalib package]

Class SegGeometryCspad2x1V1 defines the cspad 2x1 V1 sensor pixel coordinates in its local frame. More...

#include <SegGeometryCspad2x1V1.h>

Inheritance diagram for PSCalib::SegGeometryCspad2x1V1:

PSCalib::SegGeometry List of all members.

Public Member Functions

virtual void print_seg_info (const unsigned &pbits=0)
 Prints segment info for selected bits.
virtual const size_t size ()
 Returns size of the coordinate arrays.
virtual const size_t rows ()
 Returns number of rows in segment.
virtual const size_t cols ()
 Returns number of cols in segment.
virtual const size_t * shape ()
 Returns shape of the segment {rows, cols}.
virtual const pixel_coord_t pixel_scale_size ()
 Returns pixel size in um for indexing.
virtual const pixel_area_tpixel_area_array ()
 Returns pointer to the array of pixel areas.
virtual const pixel_coord_tpixel_size_array (AXIS axis)
 Returns pointer to the array of pixel size in um for AXIS.
virtual const pixel_coord_tpixel_coord_array (AXIS axis)
 Returns pointer to the array of segment pixel coordinates in um for AXIS.
virtual const pixel_coord_t pixel_coord_min (AXIS axis)
 Returns minimal value in the array of segment pixel coordinates in um for AXIS.
virtual const pixel_coord_t pixel_coord_max (AXIS axis)
 Returns maximal value in the array of segment pixel coordinates in um for AXIS.
virtual const pixel_mask_tpixel_mask_array (const unsigned &mbits=0377)
 Returns pointer to the array of pixel mask: 1/0 = ok/masked.

Static Public Member Functions

static PSCalib::SegGeometryinstance (const bool &use_wide_pix_center=false)

Static Public Attributes

static const size_t ROWS = 185
 Number of pixel rows in 2x1.
static const size_t COLS = 388
 Number of pixel columnss in 2x1.
static const size_t COLSHALF = 194
 Half number of pixel columnss in 2x1.
static const size_t SIZE = COLS*ROWS
 Number of pixels in 2x1.
static const size_t NCORNERS = 4
 Number of corners.
static const pixel_coord_t PIX_SCALE_SIZE = 109.92
 Pixel scale size [um] for indexing.
static const pixel_coord_t PIX_SIZE_COLS = PIX_SCALE_SIZE
 Pixel size [um] in column direction.
static const pixel_coord_t PIX_SIZE_ROWS = PIX_SCALE_SIZE
 Pixel size [um] in row direction.
static const pixel_coord_t PIX_SIZE_WIDE = 274.80
 Wide pixel length [um].
static const pixel_coord_t PIX_SIZE_DEPTH = 400.
 Pixel size [um] in depth.
static const double UM_TO_PIX = 1./PIX_SCALE_SIZE
 Conversion factor between um and pix.

Detailed Description

Class SegGeometryCspad2x1V1 defines the cspad 2x1 V1 sensor pixel coordinates in its local frame.

2x1 sensor coordinate frame:

    (Xmin,Ymax)      ^ Y          (Xmax,Ymax)
    (0,0)            |            (0,387)
       +----------------------------+
       |             |              |
       |             |              |
       |             |              |
     --|-------------+--------------|----> X
       |             |              |
       |             |              |
       |             |              |
       +----------------------------+
    (184,0)          |           (184,387)
    (Xmin,Ymin)                  (Xmax,Ymin)

Pixel (r,c)=(0,0) is in the top left corner of the matrix which has coordinates (Xmin,Ymax) Here we assume that 2x1 has 185 rows and 388 columns. This assumption differs from the DAQ map, where rows and cols are interchanged: /reg/g/psdm/sw/external/lusi-xtc/2.12.0a/x86_64-rhel5-gcc41-opt/pdsdata/cspad/ElementIterator.hh, Detector.hh

Interface Description
This software was developed for the LCLS project. If you use all or part of it, please give an appropriate acknowledgment.

Version:
$Id: SegGeometryCspad2x1V1.h 10053 2015-05-11 22:27:46Z dubrovin@SLAC.STANFORD.EDU $
Author:
Mikhail S. Dubrovin

Definition at line 122 of file SegGeometryCspad2x1V1.h.


Member Function Documentation

virtual const size_t PSCalib::SegGeometryCspad2x1V1::cols ( void   )  [inline, virtual]

Returns number of cols in segment.

Implements PSCalib::SegGeometry.

Definition at line 171 of file SegGeometryCspad2x1V1.h.

References COLS.

static PSCalib::SegGeometry* PSCalib::SegGeometryCspad2x1V1::instance ( const bool &  use_wide_pix_center = false  )  [static]

Referenced by PSCalib::SegGeometryStore::Create().

virtual const pixel_area_t* PSCalib::SegGeometryCspad2x1V1::pixel_area_array (  )  [virtual]

Returns pointer to the array of pixel areas.

Implements PSCalib::SegGeometry.

virtual const pixel_coord_t* PSCalib::SegGeometryCspad2x1V1::pixel_coord_array ( AXIS  axis  )  [virtual]

Returns pointer to the array of segment pixel coordinates in um for AXIS.

virtual const pixel_coord_t PSCalib::SegGeometryCspad2x1V1::pixel_coord_max ( AXIS  axis  )  [virtual]

Returns maximal value in the array of segment pixel coordinates in um for AXIS.

virtual const pixel_coord_t PSCalib::SegGeometryCspad2x1V1::pixel_coord_min ( AXIS  axis  )  [virtual]

Returns minimal value in the array of segment pixel coordinates in um for AXIS.

virtual const pixel_mask_t* PSCalib::SegGeometryCspad2x1V1::pixel_mask_array ( const unsigned &  mbits = 0377  )  [virtual]

Returns pointer to the array of pixel mask: 1/0 = ok/masked.

Parameters:
[in] mbits - mask control bits; + 1 - mask edges, + 2 - mask two central columns, + 4 - mask non-bounded pixels, + 8 - mask nearest neighbours of nonbonded pixels.

Implements PSCalib::SegGeometry.

virtual const pixel_coord_t PSCalib::SegGeometryCspad2x1V1::pixel_scale_size (  )  [inline, virtual]

Returns pixel size in um for indexing.

Implements PSCalib::SegGeometry.

Definition at line 177 of file SegGeometryCspad2x1V1.h.

References PIX_SCALE_SIZE.

virtual const pixel_coord_t* PSCalib::SegGeometryCspad2x1V1::pixel_size_array ( AXIS  axis  )  [virtual]

Returns pointer to the array of pixel size in um for AXIS.

Parameters:
[in] axis Axis from the enumerated list for X, Y, and Z axes

virtual void PSCalib::SegGeometryCspad2x1V1::print_seg_info ( const unsigned &  pbits = 0  )  [virtual]

Prints segment info for selected bits.

Implements PSCalib::SegGeometry.

virtual const size_t PSCalib::SegGeometryCspad2x1V1::rows ( void   )  [inline, virtual]

Returns number of rows in segment.

Implements PSCalib::SegGeometry.

Definition at line 168 of file SegGeometryCspad2x1V1.h.

References ROWS.

virtual const size_t* PSCalib::SegGeometryCspad2x1V1::shape (  )  [inline, virtual]

Returns shape of the segment {rows, cols}.

Implements PSCalib::SegGeometry.

Definition at line 174 of file SegGeometryCspad2x1V1.h.

virtual const size_t PSCalib::SegGeometryCspad2x1V1::size (  )  [inline, virtual]

Returns size of the coordinate arrays.

Implements PSCalib::SegGeometry.

Definition at line 165 of file SegGeometryCspad2x1V1.h.

References SIZE.


Member Data Documentation

const size_t PSCalib::SegGeometryCspad2x1V1::COLS = 388 [static]

Number of pixel columnss in 2x1.

Definition at line 129 of file SegGeometryCspad2x1V1.h.

Referenced by cols().

const size_t PSCalib::SegGeometryCspad2x1V1::COLSHALF = 194 [static]

Half number of pixel columnss in 2x1.

Definition at line 132 of file SegGeometryCspad2x1V1.h.

const size_t PSCalib::SegGeometryCspad2x1V1::NCORNERS = 4 [static]

Number of corners.

Definition at line 138 of file SegGeometryCspad2x1V1.h.

const SegGeometry::pixel_coord_t PSCalib::SegGeometryCspad2x1V1::PIX_SCALE_SIZE = 109.92 [static]

Pixel scale size [um] for indexing.

Definition at line 141 of file SegGeometryCspad2x1V1.h.

Referenced by CSPadImageProducer::getGeometryPars(), and pixel_scale_size().

const SegGeometry::pixel_coord_t PSCalib::SegGeometryCspad2x1V1::PIX_SIZE_COLS = PIX_SCALE_SIZE [static]

Pixel size [um] in column direction.

Definition at line 144 of file SegGeometryCspad2x1V1.h.

const SegGeometry::pixel_coord_t PSCalib::SegGeometryCspad2x1V1::PIX_SIZE_DEPTH = 400. [static]

Pixel size [um] in depth.

Definition at line 153 of file SegGeometryCspad2x1V1.h.

const SegGeometry::pixel_coord_t PSCalib::SegGeometryCspad2x1V1::PIX_SIZE_ROWS = PIX_SCALE_SIZE [static]

Pixel size [um] in row direction.

Definition at line 147 of file SegGeometryCspad2x1V1.h.

const SegGeometry::pixel_coord_t PSCalib::SegGeometryCspad2x1V1::PIX_SIZE_WIDE = 274.80 [static]

Wide pixel length [um].

Definition at line 150 of file SegGeometryCspad2x1V1.h.

const size_t PSCalib::SegGeometryCspad2x1V1::ROWS = 185 [static]

Number of pixel rows in 2x1.

Definition at line 126 of file SegGeometryCspad2x1V1.h.

Referenced by rows().

const size_t PSCalib::SegGeometryCspad2x1V1::SIZE = COLS*ROWS [static]

Number of pixels in 2x1.

Definition at line 135 of file SegGeometryCspad2x1V1.h.

Referenced by size().

const double PSCalib::SegGeometryCspad2x1V1::UM_TO_PIX = 1./PIX_SCALE_SIZE [static]

Conversion factor between um and pix.

Definition at line 156 of file SegGeometryCspad2x1V1.h.

Referenced by CSPadImageProducer::getGeometryPars().


The documentation for this class was generated from the following files:
Generated on 19 Dec 2016 for PSDMSoftware by  doxygen 1.4.7