25std::unique_ptr<o2::iotof::Segmentation> Segmentation::sInstance;
30 sInstance = std::unique_ptr<Segmentation>(
new Segmentation());
32 return sInstance.get();
35Segmentation::Segmentation()
38 printf(
"Invalid use of public constructor: o2::iotof::Segmentation instance exists\n");
41 const ChipSpecifics& mITofChipPars = iotofPars.iTofChipSpecifics;
42 const ChipSpecifics& mOTofChipPars = iotofPars.oTofChipSpecifics;
49void Segmentation::configChip(
const int nCols,
const int nRows,
const float pitchCol,
const float pitchRow,
const float passiveEdgeReadOut,
50 const float passiveEdgeTop,
const float passiveEdgeSide,
const float sensorLayerThicknessEff,
const float sensorLayerThickness,
const int subDetectorID)
52 if (subDetectorID == 0) {
53 mITofSpecsConfig =
ChipSpecifics(nCols, nRows, pitchCol, pitchRow, passiveEdgeReadOut, passiveEdgeTop, passiveEdgeSide, sensorLayerThicknessEff, sensorLayerThickness);
54 }
else if (subDetectorID == 1) {
55 mOTofSpecsConfig =
ChipSpecifics(nCols, nRows, pitchCol, pitchRow, passiveEdgeReadOut, passiveEdgeTop, passiveEdgeSide, sensorLayerThicknessEff, sensorLayerThickness);
57 printf(
"Invalid subDetectorID %d. Must be 0 (iTOF) or 1 (oTOF). No configuration applied.\n", subDetectorID);
61void Segmentation::configChip(
const ChipSpecifics& specsConfig,
const int subDetectorID)
63 if (subDetectorID == 0) {
65 }
else if (subDetectorID == 1) {
68 printf(
"Invalid subDetectorID %d. Must be 0 (iTOF) or 1 (oTOF). No configuration applied.\n", subDetectorID);
75 printf(
"iTOF specs:\n");
81 printf(
"oTOF specs:\n");
Definition of the Segmentation class.
ClassImp(o2::iotof::Segmentation)
static const IOTOFBaseParam & Instance()
ChipSpecifics mOTofSpecsConfig
void configChip(const int nCols, const int nRows, const float pitchCol, const float pitchRow, const float passiveEdgeReadOut, const float passiveEdgeTop, const float passiveEdgeSide, const float sensorLayerThicknessEff, const float sensorLayerThickness, const int subDetectorID)
ChipSpecifics mITofSpecsConfig
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...
float SensorSizeCols() const
float SensorSizeRows() const
float ActiveMatrixSizeRows() const
float ActiveMatrixSizeCols() const