ATLAS Offline Software
LumiBlobUtil.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
12 #ifndef COOLLUMIUTILITIES_LUMIBLOBUTIL_H
13 #define COOLLUMIUTILITIES_LUMIBLOBUTIL_H
14 
15 #include <vector>
16 #include <string>
17 
18 #include "CoralBase/AttributeList.h"
19 #include "CoolKernel/Record.h"
20 
21 class LumiBlobUtil {
22 
23  public:
24  LumiBlobUtil();
25 
26  int xvalue(const cool::Record& rec);
27  int yvalue(const cool::Record& rec);
28 
29  int xvalue(const coral::AttributeList& attrList1) const;
30  int yvalue(const coral::AttributeList& attrList1) const;
31 
32  // Clear all data vectors
33  void clear();
34  // Fill values from COOL, returns false on error
35  const std::vector<double>& bunchLumis() const;
36 
37  bool unpack(const cool::Float &ARI, const coral::Blob &blobBC, const std::vector<unsigned int> &PV);
38  // bool setValue(const coral::AttributeList& attrList1);
39  // bool setValue(const cool::Record& rec);
40  // Set array of colliding BCIDs from FillParams
41  // Only needed for certain storage modes
42 
43  // Error string contains error from setValue() operation
44  std::string error;
45  private:
46  // Data
47  std::vector<double> m_bunchLumis;
48 
49 };
50 
51 #endif
LumiBlobUtil::LumiBlobUtil
LumiBlobUtil()
Definition: LumiBlobUtil.cxx:15
python.subdetectors.tile.Blob
Blob
Definition: tile.py:17
python.PyKernel.AttributeList
AttributeList
Definition: PyKernel.py:36
LumiBlobUtil::yvalue
int yvalue(const cool::Record &rec)
Definition: LumiBlobUtil.cxx:33
LumiBlobUtil
Utility class to to decode data from FILLPARAMS COOL folder
Definition: LumiBlobUtil.h:21
LumiBlobUtil::xvalue
int xvalue(const cool::Record &rec)
Definition: LumiBlobUtil.cxx:28
LumiBlobUtil::bunchLumis
const std::vector< double > & bunchLumis() const
Definition: LumiBlobUtil.cxx:71
LumiBlobUtil::clear
void clear()
Definition: LumiBlobUtil.cxx:22
LumiBlobUtil::error
std::string error
Definition: LumiBlobUtil.h:44
LumiBlobUtil::unpack
bool unpack(const cool::Float &ARI, const coral::Blob &blobBC, const std::vector< unsigned int > &PV)
Definition: LumiBlobUtil.cxx:90
LumiBlobUtil::m_bunchLumis
std::vector< double > m_bunchLumis
Definition: LumiBlobUtil.h:47