10#include <vxd/dataobjects/VxdID.h>
69 std::transform(samples.begin(), samples.end(),
m_samples.begin(),
70 [](
typename APVFloatSamples::value_type x)->APVRawSampleType { return trimToSampleRange(x); });
117 unsigned short maxCharge = 0;
132 unsigned short maxCharge = 0;
150 T trimmedX = std::min(
151 static_cast<T
>(std::numeric_limits<DATCONSVDDigit::APVRawSampleType>::max()),
153 static_cast<T
>(std::numeric_limits<DATCONSVDDigit::APVRawSampleType>::lowest()),
172 std::transform(apvInputSamples.begin(), apvInputSamples.end(),
m_samples.begin(),
The DATCONSVDDigit class.
static DATCONSVDDigit::APVRawSampleType trimToSampleRange(T x)
Convert a value to sample range.
unsigned short m_maxSampleIndex
Index of charge of sample max.
void setCellID(short cellID)
Setter for the stripID / cellID.
unsigned short getTotalCharge()
Getter for the total charge of the array in ADUs.
bool m_isU
True if U, false if V.
void setAPVRawSamples(APVFloatSamples apvInputSamples)
Setter for the raw samples array.
static const std::size_t c_nAPVSamples
Number of APV samples stored.
VxdID::baseType m_sensorID
Compressed sensor identifier.
unsigned short getMaxSampleIndex()
Getter for the index of the biggest sample inside the cluster (0...6)
unsigned short m_totalCharge
Total charge of this DATCONSVDDigit.
VxdID::baseType getRawSensorID() const
Getter for the raw sensor ID.
APVRawSamples getRawSamples() const
Get int-array of of 6 APV25 samples.
DATCONSVDDigit(VxdID sensorID, bool isU, short cellID, APVFloatSampleType samples[c_nAPVSamples])
Constructor using c-array of samples.
APVFloatSamples getFloatSamples() const
Get float-array of 6 APV25 samples.
std::array< APVRawSampleType, c_nAPVSamples > APVRawSamples
Type for array of samples received from DAQ.
uint8_t APVRawSampleType
Type of samples received from DAQ.
std::array< APVFloatSampleType, c_nAPVSamples > APVFloatSamples
Types for array of samples for processing.
float APVFloatSampleType
Types of samples for processing.
void setSensorID(VxdID sensorid)
Setter for the sensorID.
short m_cellID
Strip coordinate in pitch units.
DATCONSVDDigit(VxdID sensorID, bool isU, short cellID, APVFloatSamples samples)
Constructor using a stl container of samples.
VxdID getSensorID() const
Getter for the sensor ID.
unsigned short getMaxSampleCharge() const
Getter for the charge of the biggest sample of the array in ADUs.
short int getCellID() const
Getter for the strip ID.
bool isUStrip() const
Getter for the strip direction (u or v)
APVRawSamples m_samples
6 APV signals from the strip.
void setUStrip(bool isU)
Setter for the strip direction (u or v).
Class to uniquely identify a any structure of the PXD and SVD.
unsigned short baseType
The base integer type for VxdID.
Abstract base class for different kinds of events.