10#include "GaudiKernel/MsgStream.h"
34 std::vector<std::string>::iterator itr;
37 if ( itr->find(
'/')==0 || itr->find(
'$')==0 || itr->find(
'.')==0 || itr->find(
':')!=string::npos ) {
38 fname = gSystem->ExpandPathName( itr->c_str() );
45 return StatusCode::FAILURE;
50 if ( itr->find(
'/')==0 || itr->find(
'$')==0 || itr->find(
'.')==0 || itr->find(
':')!=string::npos ) {
51 fname = gSystem->ExpandPathName( itr->c_str() );
58 return StatusCode::FAILURE;
66 if ( itr->find(
'/')==0 || itr->find(
'$')==0 || itr->find(
'.')==0 || itr->find(
':')!=string::npos ) {
67 fname = gSystem->ExpandPathName( itr->c_str() );
82 if ( itr->find(
'/')==0 || itr->find(
'$')==0 || itr->find(
'.')==0 || itr->find(
':')!=string::npos ) {
83 fname = gSystem->ExpandPathName( itr->c_str() );
95 return StatusCode::SUCCESS;
104 auto eventNumber = pEvent.event_number();
105 int runNumber = pEvent.run_number();
106 int lumiBlockNr = pEvent.lumi_block();
107 auto timeStamp = pEvent.time_stamp();
109 ATH_MSG_DEBUG (
"passEvent() :: run number = " << runNumber <<
110 " ; event number = " << eventNumber <<
111 " ; lumiblock number = " << lumiBlockNr <<
112 " ; timestamp = " << timeStamp
123 pass = this->
passRunLB(runNumber,lumiBlockNr);
132 const std::vector<std::string>& brlnameVec )
136 const EventContext& ctx = Gaudi::Hive::currentContext();
138 int eventNumber = ctx.eventID().event_number();
139 int runNumber = ctx.eventID().run_number();
140 int lumiBlockNr = ctx.eventID().lumi_block();
141 int timeStamp = ctx.eventID().time_stamp();
143 ATH_MSG_DEBUG (
"passThisRunLB() :: run number = " << runNumber <<
144 " ; event number = " << eventNumber <<
145 " ; lumiblock number = " << lumiBlockNr <<
146 " ; timestamp = " << timeStamp
157 pass = this->
passRunLB(runNumber,lumiBlockNr,grlnameVec,brlnameVec);
166 const std::vector<std::string>& grlnameVec,
167 const std::vector<std::string>& brlnameVec )
180 ATH_MSG_DEBUG (
"passRunLB() :: Event rejected by (_any_ of) merged black runs list.");
184 }
else if (!brlnameVec.empty()) {
186 std::vector<Root::TGoodRunsList>::const_iterator brlitr;
187 for (
unsigned int i=0; i<brlnameVec.size() && !reject; ++i) {
190 reject = brlitr->HasRunLumiBlock(runNumber,lumiBlockNr);
193 ATH_MSG_DEBUG (
"passRunLB() :: Event rejected by specific black runs list.");
199 if (!grlnameVec.empty()) {
201 std::vector<Root::TGoodRunsList>::const_iterator grlitr;
202 for (
unsigned int i=0; i<grlnameVec.size() && !pass; ++i) {
205 pass = grlitr->HasRunLumiBlock(runNumber,lumiBlockNr);
208 ATH_MSG_DEBUG (
"passRunLB() :: Event accepted by specific good runs list.");
213 ATH_MSG_DEBUG (
"passRunLB() :: Event accepted by (_any_ of) merged good runs list.");
217 ATH_MSG_DEBUG (
"passRunLB() :: Event rejected, not in (any) good runs list.");
226 return StatusCode::SUCCESS;
237 ret = stat(fileName, &info);
256 ATH_MSG_WARNING (
"registerGRLSelector() :: GRL selector with name <" << name <<
"> already registered. Return false.");
261 if (!brlnameVec.empty()) {
262 std::vector<Root::TGoodRunsList>::const_iterator brlitr;
263 for (
unsigned int i=0; i<brlnameVec.size(); ++i) {
266 ATH_MSG_ERROR (
"registerGRLSelector() :: requested BRL object with name <" << brlnameVec[i] <<
"> not found. Have you provided an object name from the BRL xml-file(s)?");
273 if (!grlnameVec.empty()) {
274 std::vector<Root::TGoodRunsList>::const_iterator grlitr;
275 for (
unsigned int i=0; i<grlnameVec.size(); ++i) {
278 ATH_MSG_ERROR (
"registerGRLSelector() :: requested GRL object with name <" << grlnameVec[i] <<
"> not found. Have you provided an object name from the GRL xml-file(s)?");
284 ATH_MSG_DEBUG (
"registerGRLSelector() :: GRL selector with name <" << name <<
"> registered.");
#define ATH_MSG_WARNING(x)
std::string PathResolverFindXMLFile(const std::string &logical_file_name)
static void SetMinLevel(TMsgLevel minLevel)