CGEM BOSS
6.6.5.i
BESIII Offline Software System
Loading...
Searching...
No Matches
Coverage.h
Go to the documentation of this file.
1
// $Header: /bes/bes/BossCvs/Calibration/calibUtil/src/dbIntegrity/Coverage.h,v 1.1.1.1 2005/10/17 06:12:26 maqm Exp $
2
#ifndef CALIBUTIL_COVERAGE_H
3
#define CALIBUTIL_COVERAGE_H
4
/**
5
@file Coverage.h
6
*/
7
#include <vector>
8
#include <string>
9
#include "
facilities/Timestamp.h
"
10
11
namespace
rdbModel
{
12
class
Rdb;
13
class
Connection;
14
}
15
namespace
calibUtil
{
16
class
Metadata;
17
}
18
19
/**
20
@class Coverage
21
22
Check whether calibrations for a particular calibration type (or each in
23
a predefined collection) exist covering full time interval, and whether
24
they overlap.
25
*/
26
class
Coverage
{
27
public
:
28
Coverage
(
calibUtil::Metadata
* meta,
29
const
std::string& instr,
const
std::string& flavor,
30
const
std::string& level,
const
facilities::Timestamp
& ts);
31
32
/// The @nickname argument may be a single legal calib_type or may be
33
/// one of the special wildcard values "CAL" "TKR" "*", in which case it
34
/// is expanded to a suitable list of calib types (if we have a schema)
35
bool
expandTypes
(std::string& nickname, std::vector<std::string>& types);
36
37
~Coverage
() {};
38
39
// raison d'etre of this class. Examine all db rows of type @calibType
40
// and also matching flavor, instrument, level, etc., to see if there
41
// is precisely one valid an any one time (with some tolerance for
42
// small overlap)
43
unsigned
checkType
(std::string calibtype);
44
void
setOverlap
(
unsigned
seconds) {m_overlap = seconds;}
45
private
:
46
rdbModel::Connection
* m_conn;
47
rdbModel::Rdb
* m_rdb;
48
std::string m_instr;
49
std::string m_flavor;
50
std::string m_level;
51
std::string m_calib;
52
53
facilities::Timestamp
m_ts;
54
std::string m_table;
55
unsigned
m_overlap;
56
std::vector<std::string> m_selects;
57
std::vector<std::string> m_orderBy;
58
59
};
60
#endif
Timestamp.h
Coverage
Definition
Coverage.h:26
Coverage::setOverlap
void setOverlap(unsigned seconds)
Definition
Coverage.h:44
Coverage::checkType
unsigned checkType(std::string calibtype)
Definition
Coverage.cxx:88
Coverage::~Coverage
~Coverage()
Definition
Coverage.h:37
Coverage::expandTypes
bool expandTypes(std::string &nickname, std::vector< std::string > &types)
Definition
Coverage.cxx:67
Coverage::Coverage
Coverage(calibUtil::Metadata *meta, const std::string &instr, const std::string &flavor, const std::string &level, const facilities::Timestamp &ts)
Definition
Coverage.cxx:46
calibUtil::Metadata
Definition
Metadata.h:33
facilities::Timestamp
Definition
Timestamp.h:49
rdbModel::Connection
Definition
Connection.h:54
rdbModel::Rdb
Definition
Rdb.h:41
calibUtil
Module implements methods for clients to get generic services.
Definition
ICalibMetaCnvSvc.h:21
rdbModel
Definition
Metadata.h:11
6.6.5.i
Calibration
calibUtil
calibUtil-00-00-39
src
dbIntegrity
Coverage.h
Generated by
1.12.0