src
CondTools
DT
src
DTStatusFlagHandler.cc
Go to the documentation of this file.
1
/*
2
* See header file for a description of this class.
3
*
4
* $Date: 2009/09/16 11:00:18 $
5
* $Revision: 1.3.14.1 $
6
* \author Paolo Ronchese INFN Padova
7
*
8
*/
9
10
//-----------------------
11
// This Class' Header --
12
//-----------------------
13
#include "
CondTools/DT/interface/DTStatusFlagHandler.h
"
14
15
//-------------------------------
16
// Collaborating Class Headers --
17
//-------------------------------
18
#include "
CondFormats/DTObjects/interface/DTStatusFlag.h
"
19
20
//---------------
21
// C++ Headers --
22
//---------------
23
#include <iostream>
24
#include <fstream>
25
26
//-------------------
27
// Initializations --
28
//-------------------
29
30
//----------------
31
// Constructors --
32
//----------------
33
DTStatusFlagHandler::DTStatusFlagHandler
(
const
edm::ParameterSet
& ps)
34
:
dataTag
(ps.getParameter<
std
::
string
>(
"tag"
)),
35
fileName
(ps.getParameter<
std
::
string
>(
"file"
)),
36
runNumber
(ps.getParameter<unsigned
int
>(
"run"
)) {}
37
38
//--------------
39
// Destructor --
40
//--------------
41
DTStatusFlagHandler::~DTStatusFlagHandler
() {}
42
43
//--------------
44
// Operations --
45
//--------------
46
void
DTStatusFlagHandler::getNewObjects
() {
47
//to access the information on the tag inside the offline database:
48
cond::TagInfo_t
const
& ti =
tagInfo
();
49
cond::Time_t
last
= ti.
lastInterval
.
since
;
50
51
//to access the information on last successful log entry for this tag:
52
// cond::LogDBEntry const & lde = logDBEntry();
53
54
//to access the lastest payload (Ref is a smart pointer)
55
// Ref payload = lastPayload();
56
57
/*
58
int irun = event.id().run();
59
int ievt = event.id().event();
60
std::cout << "================ "
61
<< irun << " " << ievt << std::endl;
62
63
std::map<std::string, popcon::PayloadIOV> mp = getOfflineInfo();
64
std::map<std::string, popcon::PayloadIOV>::iterator iter = mp.begin();
65
std::map<std::string, popcon::PayloadIOV>::iterator iend = mp.end();
66
std::cout << "list of all tags: " << std::endl;
67
while ( iter != iend ) {
68
std::cout << "Tag: " << iter->first
69
<< " , last object valid since " << iter->second.last_since
70
<< " to " << iter->second.last_till
71
<< std::endl;
72
iter++;
73
}
74
75
std::cout << "look for tag " << dataTag << std::endl;
76
std::map<std::string, popcon::PayloadIOV>::iterator itag =
77
mp.find( dataTag );
78
*/
79
if
(
runNumber
<=
last
) {
80
std::cout
<<
"More recent data already present - skipped"
<< std::endl;
81
return
;
82
}
83
84
DTStatusFlag
* stFlag =
new
DTStatusFlag
(
dataTag
);
85
86
int
status
= 0;
87
std::ifstream
ifile
(
fileName
.c_str());
88
int
whe;
89
int
sta;
90
int
sec
;
91
int
qua;
92
int
lay;
93
int
cel;
94
int
noiseFlag;
95
int
feMask;
96
int
tdcMask;
97
int
trigMask;
98
int
deadFlag;
99
int
nohvFlag;
100
while
(
ifile
>> whe >> sta >>
sec
>> qua >> lay >> cel >> noiseFlag >> feMask >> tdcMask >> trigMask >> deadFlag >>
101
nohvFlag) {
102
status
= stFlag->
set
(whe,
103
sta,
104
sec
,
105
qua,
106
lay,
107
cel,
108
noiseFlag != 0,
109
feMask != 0,
110
tdcMask != 0,
111
trigMask != 0,
112
deadFlag != 0,
113
nohvFlag != 0);
114
std::cout
<< whe <<
" "
<< sta <<
" "
<<
sec
<<
" "
<< qua <<
" "
<< lay <<
" "
<< cel <<
" "
<< noiseFlag <<
" "
115
<< feMask <<
" "
<< tdcMask <<
" "
<< trigMask <<
" "
<< deadFlag <<
" "
<< nohvFlag <<
" -> "
;
116
std::cout
<<
"insert status: "
<<
status
<< std::endl;
117
}
118
119
/*
120
unsigned int runf = irun;
121
unsigned int runl = 0xffffffff;
122
popcon::IOVPair iop = { runf, runl };
123
std::cout << "APPEND NEW OBJECT: "
124
<< runf << " " << runl << " " << stFlag << std::endl;
125
m_to_transfer->push_back( std::make_pair( stFlag, iop ) );
126
*/
127
128
//for each payload provide IOV information (say in this case we use since)
129
m_to_transfer
.emplace_back(stFlag,
runNumber
);
130
}
131
132
std::string
DTStatusFlagHandler::id
()
const
{
return
dataTag
; }
DTStatusFlagHandler::fileName
std::string fileName
Definition:
DTStatusFlagHandler.h:52
DTStatusFlag::set
int set(int wheelId, int stationId, int sectorId, int slId, int layerId, int cellId, bool noiseFlag, bool feMask, bool tdcMask, bool trigMask, bool deadFlag, bool nohvFlag)
Definition:
DTStatusFlag.cc:118
cond::TagInfo_t::lastInterval
Iov_t lastInterval
Definition:
Types.h:73
DTStatusFlag.h
cond::Iov_t::since
Time_t since
Definition:
Types.h:53
std
Definition:
JetResolutionObject.h:76
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition:
AlCaHLTBitMon_QueryRunRegistry.py:256
popcon::PopConSourceHandler< DTStatusFlag >::tagInfo
cond::TagInfo_t const & tagInfo() const
Definition:
PopConSourceHandler.h:43
DTStatusFlagHandler.h
DTStatusFlagHandler::DTStatusFlagHandler
DTStatusFlagHandler(const edm::ParameterSet &ps)
Definition:
DTStatusFlagHandler.cc:33
cond::Time_t
unsigned long long Time_t
Definition:
Time.h:14
createfilelist.int
int
Definition:
createfilelist.py:10
DTStatusFlagHandler::dataTag
std::string dataTag
Definition:
DTStatusFlagHandler.h:51
RPCCPPFLinkMapPopConAnalyzer_cfi.dataTag
dataTag
Definition:
RPCCPPFLinkMapPopConAnalyzer_cfi.py:7
popcon::PopConSourceHandler< DTStatusFlag >::m_to_transfer
std::vector< std::pair< DTStatusFlag *, Time_t > > m_to_transfer
Definition:
PopConSourceHandler.h:99
mps_update.status
status
Definition:
mps_update.py:68
convertSQLiteXML.runNumber
runNumber
Definition:
convertSQLiteXML.py:91
DTStatusFlagHandler::id
std::string id() const override
Definition:
DTStatusFlagHandler.cc:132
DTStatusFlagHandler::runNumber
unsigned int runNumber
Definition:
DTStatusFlagHandler.h:53
DTStatusFlagHandler::getNewObjects
void getNewObjects() override
Definition:
DTStatusFlagHandler.cc:46
DTStatusFlagHandler::~DTStatusFlagHandler
~DTStatusFlagHandler() override
Definition:
DTStatusFlagHandler.cc:41
cond::TagInfo_t
Definition:
Types.h:69
dqmdumpme.last
last
Definition:
dqmdumpme.py:56
DTStatusFlag
Definition:
DTStatusFlag.h:74
MillePedeFileConverter_cfg.fileName
fileName
Definition:
MillePedeFileConverter_cfg.py:32
fileinputsource_cfi.sec
sec
Definition:
fileinputsource_cfi.py:88
edm::ParameterSet
Definition:
ParameterSet.h:48
gather_cfg.cout
cout
Definition:
gather_cfg.py:144
compare_using_db.ifile
ifile
Definition:
compare_using_db.py:251
Generated for CMSSW Reference Manual by
1.8.14