![]() |
Project
|
#include <PressureTemperatureHelper.h>
Public Member Functions | |
| PressureTemperatureHelper ()=default | |
| bool | accountCCDBInputs (const o2::framework::ConcreteDataMatcher &matcher, void *obj) |
| check for new CCDB objects | |
| void | extractCCDBInputs (o2::framework::ProcessingContext &pc) const |
| trigger checking for CCDB objects | |
| void | extractCCDBInputs (o2::ccdb::BasicCCDBManager &ccdb, long timestampMS) |
| void | sendPTForTS (o2::framework::ProcessingContext &pc, const ULong64_t timestamp) const |
| send temperature and pressure for given time stamp | |
| void | setFitIntervalTemp (const int fitIntervalMS) |
| set fit interval range for temperature in ms | |
| float | interpolate (const std::vector< ULong64_t > ×tamps, const std::vector< float > &values, ULong64_t timestamp) const |
| interpolate input values for given timestamp | |
| float | getPressure (const ULong64_t timestamp) const |
| get pressure for given time stamp in ms | |
| void | setPressure (const std::pair< std::vector< float >, std::vector< ULong64_t > > &pressure) |
| manually set the pressure | |
| void | setTemperature (const std::pair< std::vector< float >, std::vector< ULong64_t > > &temperatureA, const std::pair< std::vector< float >, std::vector< ULong64_t > > &temperatureC) |
| manually set the temperature | |
| dataformats::Pair< float, float > | getTemperature (const ULong64_t timestamp) const |
| get temperature for given time stamp in ms | |
| float | getMeanTemperature (const ULong64_t timestamp) const |
| get mean temperature over A and C side | |
| float | getTP (int64_t ts) const |
| std::pair< ULong64_t, ULong64_t > | getMinMaxTime () const |
| get minimum and maximum time stamps of the pressure and temperature data | |
Static Public Member Functions | |
| static void | requestCCDBInputs (std::vector< o2::framework::InputSpec > &inputs) |
| static void | setOutputs (std::vector< o2::framework::OutputSpec > &outputs) |
| define outputs in case pressure and temperature will be send | |
| static constexpr o2::header::DataDescription | getDataDescriptionPressure () |
| static constexpr o2::header::DataDescription | getDataDescriptionTemperature () |
Protected Member Functions | |
| ClassDefNV (PressureTemperatureHelper, 2) | |
| last temperature object accounted for via BasicCCDBManager, for dedup only, not streamed | |
Static Protected Member Functions | |
| static void | addInput (std::vector< o2::framework::InputSpec > &inputs, o2::framework::InputSpec &&isp) |
| static void | addOutput (std::vector< o2::framework::OutputSpec > &outputs, o2::framework::OutputSpec &&osp) |
| static constexpr float | toKelvin (float celsius) |
Protected Attributes | |
| std::pair< std::vector< float >, std::vector< ULong64_t > > | mPressure |
| pressure values for both measurements | |
| std::pair< std::vector< float >, std::vector< ULong64_t > > | mTemperatureA |
| temperature values A-side | |
| std::pair< std::vector< float >, std::vector< ULong64_t > > | mTemperatureC |
| temperature values C-side | |
| int | mFitIntervalMS {5 * 60 * 1000} |
| fit interval for the temperature | |
| const void * | mLastPressureObj {} |
| const void * | mLastTemperatureObj {} |
| last pressure object accounted for via BasicCCDBManager, for dedup only, not streamed | |
Definition at line 39 of file PressureTemperatureHelper.h.
|
default |
| bool PressureTemperatureHelper::accountCCDBInputs | ( | const o2::framework::ConcreteDataMatcher & | matcher, |
| void * | obj | ||
| ) |
check for new CCDB objects
Definition at line 55 of file PressureTemperatureHelper.cxx.
|
staticprotected |
Definition at line 107 of file PressureTemperatureHelper.cxx.
|
staticprotected |
Definition at line 120 of file PressureTemperatureHelper.cxx.
|
protected |
last temperature object accounted for via BasicCCDBManager, for dedup only, not streamed
| void PressureTemperatureHelper::extractCCDBInputs | ( | o2::ccdb::BasicCCDBManager & | ccdb, |
| long | timestampMS | ||
| ) |
fetch pressure/temperature directly via a BasicCCDBManager (e.g. from O2Physics analysis tasks, outside of a DPL device) and refit them. The (comparably expensive) refit is skipped if the CCDB objects did not change since the last call.
Definition at line 35 of file PressureTemperatureHelper.cxx.
| void PressureTemperatureHelper::extractCCDBInputs | ( | o2::framework::ProcessingContext & | pc | ) | const |
trigger checking for CCDB objects
Definition at line 29 of file PressureTemperatureHelper.cxx.
|
inlinestaticconstexpr |
Definition at line 95 of file PressureTemperatureHelper.h.
|
inlinestaticconstexpr |
Definition at line 96 of file PressureTemperatureHelper.h.
| float PressureTemperatureHelper::getMeanTemperature | ( | const ULong64_t | timestamp | ) | const |
get mean temperature over A and C side
Definition at line 166 of file PressureTemperatureHelper.cxx.
| std::pair< ULong64_t, ULong64_t > PressureTemperatureHelper::getMinMaxTime | ( | ) | const |
get minimum and maximum time stamps of the pressure and temperature data
Definition at line 193 of file PressureTemperatureHelper.cxx.
|
inline |
get pressure for given time stamp in ms
Definition at line 74 of file PressureTemperatureHelper.h.
|
inline |
get temperature for given time stamp in ms
Definition at line 87 of file PressureTemperatureHelper.h.
| float PressureTemperatureHelper::getTP | ( | int64_t | ts | ) | const |
Definition at line 154 of file PressureTemperatureHelper.cxx.
| float PressureTemperatureHelper::interpolate | ( | const std::vector< ULong64_t > & | timestamps, |
| const std::vector< float > & | values, | ||
| ULong64_t | timestamp | ||
| ) | const |
interpolate input values for given timestamp
| timestamps | time stamps of the data |
| values | data points |
| timestamp | time where to interpolate the values |
Definition at line 127 of file PressureTemperatureHelper.cxx.
|
static |
Definition at line 101 of file PressureTemperatureHelper.cxx.
| void PressureTemperatureHelper::sendPTForTS | ( | o2::framework::ProcessingContext & | pc, |
| const ULong64_t | timestamp | ||
| ) | const |
send temperature and pressure for given time stamp
Definition at line 145 of file PressureTemperatureHelper.cxx.
set fit interval range for temperature in ms
Definition at line 65 of file PressureTemperatureHelper.h.
|
static |
define outputs in case pressure and temperature will be send
Definition at line 114 of file PressureTemperatureHelper.cxx.
|
inline |
manually set the pressure
Definition at line 77 of file PressureTemperatureHelper.h.
|
inline |
manually set the temperature
Definition at line 80 of file PressureTemperatureHelper.h.
|
inlinestaticconstexprprotected |
Definition at line 104 of file PressureTemperatureHelper.h.
|
protected |
fit interval for the temperature
Definition at line 109 of file PressureTemperatureHelper.h.
|
protected |
Definition at line 111 of file PressureTemperatureHelper.h.
|
protected |
last pressure object accounted for via BasicCCDBManager, for dedup only, not streamed
Definition at line 112 of file PressureTemperatureHelper.h.
|
protected |
pressure values for both measurements
Definition at line 106 of file PressureTemperatureHelper.h.
|
protected |
temperature values A-side
Definition at line 107 of file PressureTemperatureHelper.h.
|
protected |
temperature values C-side
Definition at line 108 of file PressureTemperatureHelper.h.