 |
Belle II Software
release-05-02-19
|
13 #include <top/dbobjects/TOPGeoBase.h>
14 #include <top/dbobjects/TOPGeoPMT.h>
26 class TOPGeoPMTArray:
public TOPGeoBase {
46 double gapX,
double gapY,
47 const std::string& material,
49 const std::string& name =
"TOPPMTArray"):
208 double getX(
unsigned col)
const
218 double getY(
unsigned row)
const
241 unsigned getPmtID(
unsigned row,
unsigned col)
const;
248 unsigned getRow(
unsigned pmtID)
const;
255 unsigned getColumn(
unsigned pmtID)
const;
264 int getPixelID(
double x,
double y,
unsigned pmtID)
const;
272 int getPixelID(
unsigned pmtID,
unsigned pmtPixelID)
const;
302 void print(
const std::string& title =
"PMT array geometry parameters")
const override;
unsigned getNumColumns() const
Returns number of pixel columns.
Geometry parameters of MCP-PMT.
unsigned getSize() const
Returns array size.
void print(const std::string &title="PMT array geometry parameters") const override
Print the content of the class.
unsigned getColumn(unsigned pmtID) const
Converts PMT ID to column number (1-based)
unsigned getNumPixelRows() const
Returns number of pixel rows.
const std::string & getFilterMaterial() const
Returns wavelenght filter material.
void generateDecoupledPMTs(double fraction)
Generate randomly a fraction of PMT's to be optically decoupled.
double getSizeY() const
Returns array volume dimension in y.
void setAirGap(double gap)
Sets air gap for optically decoupled PMT's.
float m_gy
gap between PMT's in y
Base class for geometry parameters.
float m_airGap
air gap thickness for decoupled PMT's
unsigned getNumPixelColumns() const
Returns number of pixel columns.
unsigned getNumPixels() const
Returns number of pixels.
double getSizeY() const
Returns full size in y.
double getSizeX() const
Returns full size in x.
double getSizeX() const
Returns array volume dimension in x.
unsigned getNumRows() const
Returns number of array rows.
ClassDefOverride(TOPGeoPMTArray, 3)
ClassDef.
bool isPMTDecoupled(unsigned pmtID) const
Checks if PMT is optically decoupled.
const std::vector< unsigned > & getDecoupledPMTs() const
Returns ID's of optically decoupled PMT's.
std::string m_cookieMaterial
silicone cookie material
float m_filterThickness
wavelength filter thickness
float m_cookieThickness
silicone cookie thickness
double getGapX() const
Returns gap between PMT's in x.
double getFilterThickness() const
Returns wavelength filter thickness.
unsigned getNumColumns() const
Returns number of array columns.
Abstract base class for different kinds of events.
double getX(unsigned col) const
Returns x coordinate of column center.
unsigned m_numRows
number of rows
Geometry parameters of MCP-PMT array.
std::string m_filterMaterial
wavelength filter material
static double s_unit
conversion unit for length
int getPixelID(double x, double y, unsigned pmtID) const
Converts (digitizes) x, y and PMT ID to pixel ID (1-based)
double getY(unsigned row) const
Returns the y coordinate of row center.
const std::string & getCookieMaterial() const
Returns silicone cookie material.
bool isConsistent() const override
Check for consistency of data members.
unsigned getNumPixels() const
Returns number of pixels.
void setSiliconeCookie(double thickness, const std::string &material)
Sets silicone cookie.
std::vector< unsigned > m_decoupledPMTs
ID's of decoupled PMT's.
float m_gx
gap between PMT's in x
double getAirGap() const
Returns air gap.
double getDx() const
Returns spacing in x (column width)
double getCookieThickness() const
Returns silicone cookie thickness.
double getSizeZ() const
Returns full size in z.
const std::string & getMaterial() const
Returns material name into which PMT's are inserted.
double getDy() const
Returns spacing in y (row height)
double getGapY() const
Returns gap between PMT's in y.
TOPGeoPMT m_pmt
PMT geometry parameters.
unsigned getRow(unsigned pmtID) const
Converts PMT ID to row number (1-based)
double getSizeZ() const
Returns array volume dimension in z.
unsigned getPmtID(unsigned row, unsigned col) const
Converts row and column numbers to PMT ID (1-based)
std::string m_material
material name into which PMT's are inserted
TOPGeoPMTArray()
Default constructor.
void setDecoupledPMT(unsigned pmtID)
Sets PMT as optically decoupled.
const TOPGeoPMT & getPMT() const
Returns PMT geometry parameters.
unsigned getNumRows() const
Returns number of pixel rows.
unsigned m_numColumns
number of columns
void setWavelengthFilter(double thickness, const std::string &material)
Sets wavelength filter.