15#ifndef ALICEO2_TPC_TPCSCALER
16#define ALICEO2_TPC_TPCSCALER
80 void dumpToFile(
const char*
file,
const char*
name,
double startTimeMS,
double endTimeMS);
87 void dumpToFileSlices(
const char*
file,
const char*
name,
int minutesPerObject,
float marginMS = 500,
float marginCCDBMinutes = 1);
148 float mIonDriftTimeMS{200};
150 unsigned int mFirstTFOrbit{};
151 double mTimeStampMS{};
152 float mIntegrationTimeMS{1.};
153 std::vector<float> mScalerA{};
154 std::vector<float> mScalerC{};
155 TPCScalerWeights mScalerWeights{};
156 bool mUseWeights{
false};
159 int getDataIdx(
double timestamp)
const {
return (timestamp - mTimeStampMS) / mIntegrationTimeMS + 0.5; }
unsigned int getFirstTFOrbit() const
bool weightsUsed() const
return if weights are used
int getNValuesIonDriftTime() const
void dumpToFileSlices(const char *file, const char *name, int minutesPerObject, float marginMS=500, float marginCCDBMinutes=1)
TPCScaler()=default
default constructor
float getScalers(unsigned int idx, o2::tpc::Side side) const
float getMeanScaler(double timestamp, o2::tpc::Side side) const
void setScaler(const std::vector< float > &values, const o2::tpc::Side side)
void setIonDriftTimeMS(float ionDriftTimeMS)
TPCScaler & operator=(TPCScaler &&other)=default
default move assignment
int getNValues(o2::tpc::Side side) const
float getIntegrationTimeMS() const
float getDurationMS(o2::tpc::Side side) const
float getIonDriftTimeMS() const
double getStartTimeStampMS() const
void loadFromFile(const char *inpf, const char *name)
const auto & getScalers(o2::tpc::Side side) const
void clampScalers(float minThreshold, float maxThreshold, Side side)
double getEndTimeStampMS(o2::tpc::Side side) const
void dumpToFile(const char *file, const char *name)
void setFirstTFOrbit(unsigned int firstTFOrbit)
void setStartTimeStampMS(double timeStampMS)
void useWeights(bool useWeights)
enable usage of weights
void setFromTree(TTree &tpcScalerTree)
set this object from input tree
const auto & getScalerWeights() const
void setIntegrationTimeMS(float integrationTimeMS)
void setScalerWeights(const TPCScalerWeights &weights)
setting the weights for the scalers
GLsizei const GLuint const GLfloat * weights
GLuint const GLchar * name
GLenum GLsizei GLsizei GLint * values
Global TPC definitions and constants.
float getDurationMS() const
float mSamplingTimeMS
sampling of the stored weights
std::vector< float > mWeights
stored weights
float mFirstTimeStampMS
first timestamp
ClassDefNV(TPCScalerWeights, 1)
float getWeight(float deltaTime) const
VectorOfTObjectPtrs other