CMS 3D CMS Logo

PPSTimingCalibrationLUT.h
Go to the documentation of this file.
1 /****************************************************************************
2  *
3  * This is a part of CTPPS offline software.
4  * Authors:
5  * Christopher Misan
6  * Filip Dej
7  * Laurent Forthomme
8  *
9  ****************************************************************************/
10 
11 #ifndef CondFormats_PPSObjects_PPSTimingCalibrationLUT_h
12 #define CondFormats_PPSObjects_PPSTimingCalibrationLUT_h
13 
15 
16 #include <map>
17 #include <vector>
18 
20 public:
22  struct Key {
24 
26  bool operator<(const Key& rhs) const;
27  friend std::ostream& operator<<(std::ostream& os, const Key& key);
28 
30  };
31  //--------------------------------------------------------------------------
32 
33  using BinMap = std::map<Key, std::vector<double> >;
34 
35  PPSTimingCalibrationLUT() = default;
36  PPSTimingCalibrationLUT(const BinMap& binMap) : binMap_(binMap) {}
37  ~PPSTimingCalibrationLUT() = default;
38 
39  std::vector<double> bins(int key1, int key2, int key3, int key4) const;
40 
41  friend std::ostream& operator<<(std::ostream& os, const PPSTimingCalibrationLUT& data);
42 
43 private:
45 
47 };
48 
49 #endif
friend std::ostream & operator<<(std::ostream &os, const PPSTimingCalibrationLUT &data)
std::vector< double > bins(int key1, int key2, int key3, int key4) const
~PPSTimingCalibrationLUT()=default
friend std::ostream & operator<<(std::ostream &os, const Key &key)
PPSTimingCalibrationLUT()=default
std::map< Key, std::vector< double > > BinMap
#define COND_SERIALIZABLE
Definition: Serializable.h:39
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:80
Helper structure for indexing calibration data.
bool operator<(const Key &rhs) const
Comparison operator.
PPSTimingCalibrationLUT(const BinMap &binMap)