1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
//---------------------------------------------------
// Author : Freya.Blekman@cern.ch
// Name : SiPixelCalibConfiguration
//---------------------------------------------------
#ifndef SiPixelCalibConfiguration_H
#define SiPixelCalibConfiguration_H
#include "CondFormats/Serialization/interface/Serializable.h"
#include <iostream>
#include <string>
#include <vector>
#include <cstdint>
#include "CalibFormats/SiPixelObjects/interface/PixelCalibConfiguration.h"
class SiPixelCalibConfiguration {
public:
SiPixelCalibConfiguration() { ; }
SiPixelCalibConfiguration(const pos::PixelCalibConfiguration &fancyConfig);
virtual ~SiPixelCalibConfiguration() { ; }
//-- Setter/Getter
short getNTriggers() const { return fNTriggers; }
void setNTriggers(const short &in) { fNTriggers = in; }
std::vector<short> getRowPattern() const { return fRowPattern; }
void setRowPattern(const std::vector<short> &in) { fRowPattern = in; }
std::vector<short> getColumnPattern() const { return fColumnPattern; }
void setColumnPattern(const std::vector<short> &in) { fColumnPattern = in; }
void setCalibrationMode(const std::string &in) { fMode = in; }
std::string getCalibrationMode() const { return fMode; }
const std::vector<short> getVCalValues() const { return fVCalValues; }
void setVCalValues(const std::vector<short> &in) { fVCalValues = in; }
// interface with calibration analyzers:
short vcalForEvent(const uint32_t &eventnumber) const;
short vcalIndexForEvent(const uint32_t &eventnumber) const;
std::vector<short> columnPatternForEvent(const uint32_t &eventnumber) const;
std::vector<short> rowPatternForEvent(const uint32_t &eventnumber) const;
uint32_t nextPatternChangeForEvent(const uint32_t &eventnumber) const;
uint32_t expectedTotalEvents() const;
uint32_t patternSize() const { return fNTriggers * fVCalValues.size(); }
uint32_t nPatterns() const { return nRowPatterns() * nColumnPatterns(); }
uint32_t nColumnPatterns() const;
uint32_t nRowPatterns() const;
uint32_t nVCal() const { return fVCalValues.size(); }
private:
short fNTriggers; //
std::vector<short> fRowPattern; //
std::vector<short> fColumnPattern; //
std::vector<short> fVCalValues; //
std::string fMode;
COND_SERIALIZABLE;
};
#endif
|