Belle II Software development
PXDSensorInfoPar.h
1/**************************************************************************
2 * basf2 (Belle II Analysis Software Framework) *
3 * Author: The Belle II Collaboration *
4 * *
5 * See git log for contributors and copyright holders. *
6 * This file is licensed under LGPL-3.0, see LICENSE.md. *
7 **************************************************************************/
8#pragma once
9
10#include <vxd/dbobjects/VXDSensorInfoBasePar.h>
11
12namespace Belle2 {
23
24 public:
27 PXDSensorInfoPar(VxdID id = 0, float width = 0, float length = 0, float thickness = 0, int uCells = 0, int vCells = 0,
28 float splitLength = 0, int vCells2 = 0):
29 VXDSensorInfoBasePar(PXDSensorInfoPar::PXD, id, width, length, thickness, uCells, vCells, 0, splitLength, vCells2),
33 {
34 }
35
37 void setID(VxdID id) { m_id = id; }
38
40 void setDEPFETParams(double bulkDoping, double backVoltage, double topVoltage,
41 double sourceBorderSmallPitch, double clearBorderSmallPitch, double drainBorderSmallPitch,
42 double sourceBorderLargePitch, double clearBorderLargePitch, double drainBorderLargePitch,
43 double gateDepth, bool doublePixel, double chargeThreshold, double noiseFraction)
44 {
45 m_bulkDoping = bulkDoping;
46 m_backVoltage = backVoltage;
47 m_topVoltage = topVoltage;
48 m_sourceBorderSmallPitch = sourceBorderSmallPitch;
49 m_clearBorderSmallPitch = clearBorderSmallPitch;
50 m_drainBorderSmallPitch = drainBorderSmallPitch;
51 m_sourceBorderLargePitch = sourceBorderLargePitch;
52 m_clearBorderLargePitch = clearBorderLargePitch;
53 m_drainBorderLargePitch = drainBorderLargePitch;
54 m_gateDepth = gateDepth;
55 m_doublePixel = doublePixel;
56 m_chargeThreshold = chargeThreshold;
57 m_noiseFraction = noiseFraction;
58 }
59
61 void setIntegrationWindow(double start, double end)
62 {
63 m_integrationStart = start;
64 m_integrationEnd = end;
65 }
66
68 double getBulkDoping() const { return m_bulkDoping; }
70 double getBackVoltage() const { return m_backVoltage; }
72 double getTopVoltage() const { return m_topVoltage; }
86 double getGateDepth() const { return m_gateDepth; }
88 bool getDoublePixel() const { return m_doublePixel; }
90 double getChargeThreshold() const { return m_chargeThreshold; }
92 double getNoiseFraction() const { return m_noiseFraction; }
94 double getIntegrationStart() const { return m_integrationStart; }
96 double getIntegrationEnd() const { return m_integrationEnd; }
97
98 private:
99
130
132 };
134} // end of namespace Belle2
135
The Class for VXD geometry.
bool m_doublePixel
True if the Sensor is a double pixel structure: every other pixel is mirrored along v.
double getTopVoltage() const
Return the voltage at the top of the sensor.
double getClearBorderSmallPitch() const
Return the distance along u between the clear side of a small pixel and the start of the internal gat...
double m_clearBorderLargePitch
The distance along u between the clear side of a large pixel and the start of the internal gate.
double getChargeThreshold() const
Get the charge threshold in ADU for the sensor.
double getGateDepth() const
Return the gate depth for the sensor.
PXDSensorInfoPar(VxdID id=0, float width=0, float length=0, float thickness=0, int uCells=0, int vCells=0, float splitLength=0, int vCells2=0)
Constructor which automatically sets the SensorType.
double m_bulkDoping
Doping concentration of the silicon bulk.
double getDrainBorderLargePitch() const
Return the distance along v between the drain side of a large pixel and the start of the internal gat...
void setID(VxdID id)
Change the SensorID, useful to copy the SensorInfo from one sensor and use it for another.
double getClearBorderLargePitch() const
Return the distance along u between the clear side of a large pixel and the start of the internal gat...
void setIntegrationWindow(double start, double end)
Set the time window in which the sensor is active.
ClassDef(PXDSensorInfoPar, 6)
ClassDef, must be the last term before the closing {}.
double m_clearBorderSmallPitch
The distance along u between the clear side of a small pixel and the start of the internal gate.
double m_noiseFraction
Fixed noise fraction.
double m_topVoltage
The voltate at the top of the sensor.
double m_sourceBorderLargePitch
The distance along v between the source side of a large pixel and the start of the internal gate.
double getNoiseFraction() const
Get the noise fraction for the sensor.
double m_chargeThreshold
Charge threshold.
double getBulkDoping() const
Return the bulk doping of the Silicon sensor.
bool getDoublePixel() const
Return true if the Sensor is a double pixel structure: every other pixel is mirrored along v.
double m_drainBorderLargePitch
The distance along u between the drain side of a large pixel and the start of the internal gate.
double getSourceBorderSmallPitch() const
Return the distance along v between the source side of a small pixel and the start of the internal ga...
double m_integrationEnd
The end of the integration window, the timeframe the PXD is sensitive.
double m_integrationStart
The start of the integration window, the timeframe the PXD is sensitive.
double m_sourceBorderSmallPitch
The distance along v between the source side of a small pixel and the start of the internal gate.
double m_backVoltage
The voltage at the backside of the sensor.
double m_gateDepth
Return depth of the surface where the electrons will be collected.
double getSourceBorderLargePitch() const
Return the distance along v between the source side of a large pixel and the start of the internal ga...
double getIntegrationEnd() const
Return the end of the integration window, the timeframe the PXD is sensitive.
double m_drainBorderSmallPitch
The distance along v between the drain side of a small pixel and the start of the internal gate.
void setDEPFETParams(double bulkDoping, double backVoltage, double topVoltage, double sourceBorderSmallPitch, double clearBorderSmallPitch, double drainBorderSmallPitch, double sourceBorderLargePitch, double clearBorderLargePitch, double drainBorderLargePitch, double gateDepth, bool doublePixel, double chargeThreshold, double noiseFraction)
Set operation parameters like voltages.
double getBackVoltage() const
Return the voltage at the backside of the sensor.
double getIntegrationStart() const
Return the start of the integration window, the timeframe the PXD is sensitive.
double getDrainBorderSmallPitch() const
Return the distance along v between the drain side of a small pixel and the start of the internal gat...
Namespace to provide code needed by both Vertex Detectors, PXD and SVD.
unsigned short m_id
ID of the Sensor.
Class to uniquely identify a any structure of the PXD and SVD.
Definition: VxdID.h:33
Abstract base class for different kinds of events.