Project
Loading...
Searching...
No Matches
IOTOFBaseParam.h
Go to the documentation of this file.
1// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
2// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
3// All rights not expressly granted are reserved.
4//
5// This software is distributed under the terms of the GNU General Public
6// License v3 (GPL Version 3), copied verbatim in the file "COPYING".
7//
8// In applying this license CERN does not waive the privileges and immunities
9// granted to it by virtue of its status as an Intergovernmental Organization
10// or submit itself to any jurisdiction.
11
12#ifndef O2_IOTOF_BASEPARAM_H
13#define O2_IOTOF_BASEPARAM_H
14
17
18namespace o2
19{
20namespace iotof
21{
22
24 int NCols = 129;
25 int NRows = 271;
26 float PitchCol = 250.00e-4;
27 float PitchRow = 100.00e-4;
29 float PassiveEdgeTop = 0.;
30 float PassiveEdgeSide = 0.;
34 float SensorLayerThickness = 50.e-4;
35
36 int NPixels() const { return NCols * NRows; }
37 float ActiveMatrixSizeCols() const { return PitchCol * NCols; }
38 float ActiveMatrixSizeRows() const { return PitchRow * NRows; }
41};
42
43struct ChipSpecificsParam : public o2::conf::ConfigurableParamPromoter<ChipSpecificsParam, ChipSpecifics> {
44 O2ParamDef(ChipSpecificsParam, "ChipSpecificsParam")
45};
46
47struct IOTOFBaseParam : public o2::conf::ConfigurableParamHelper<IOTOFBaseParam> {
48 bool enableInnerTOF = true; // Enable Inner TOF layer
49 bool enableOuterTOF = true; // Enable Outer TOF layer
50 bool enableForwardTOF = true; // Enable Forward TOF layer
51 bool enableBackwardTOF = true; // Enable Backward TOF layer
52 std::string detectorPattern = ""; // Layouts of the detector
53 bool segmentedInnerTOF = false; // If the inner TOF layer is segmented
54 bool segmentedOuterTOF = false; // If the outer TOF layer is segmented
55 float x2x0 = 0.02f; // thickness expressed in radiation length, for all layers for the moment
56 float sensorThickness = 0.0050f; // thickness of the sensor in cm, for all layers for the moment, the default is set to 50 microns
57
59};
60
61} // namespace iotof
62} // end namespace o2
63
64#endif
#define O2ParamDef(classname, key)
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...
float ActiveMatrixSizeRows() const
float ActiveMatrixSizeCols() const
O2ParamDef(IOTOFBaseParam, "IOTOFBase")