ATLAS Offline Software
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
VP1EventFile::Imp Class Reference
Collaboration diagram for VP1EventFile::Imp:

Public Member Functions

 Imp ()
 
 Imp (const QString &fn, const QString &sum, int r, int e, unsigned t, bool isvalid)
 

Static Public Member Functions

static ImpinitFromFilename (const QString &filename, const QString &md5sum)
 

Public Attributes

QString fileName
 
QString md5Sum
 
int runNumber
 
unsigned long long eventNumber
 
unsigned rawTime
 
bool valid
 

Detailed Description

Definition at line 20 of file VP1EventFile.cxx.

Constructor & Destructor Documentation

◆ Imp() [1/2]

VP1EventFile::Imp::Imp ( )
inline

Definition at line 22 of file VP1EventFile.cxx.

22 : runNumber(0), eventNumber(0), rawTime(0), valid(false) {}

◆ Imp() [2/2]

VP1EventFile::Imp::Imp ( const QString &  fn,
const QString &  sum,
int  r,
int  e,
unsigned  t,
bool  isvalid 
)
inline

Definition at line 23 of file VP1EventFile.cxx.

25  : fileName(fn), md5Sum(sum),
26  runNumber(r), eventNumber(e), rawTime(t), valid(isvalid)
27  {}

Member Function Documentation

◆ initFromFilename()

VP1EventFile::Imp * VP1EventFile::Imp::initFromFilename ( const QString &  filename,
const QString &  md5sum 
)
static

Definition at line 45 of file VP1EventFile.cxx.

46 {
47 #if QTCORE_VERSION >= 0x050E00
48  QStringList filenameparts = filename.split('.', Qt::SkipEmptyParts );
49 #else
50  QStringList filenameparts = filename.split('.', QString::SkipEmptyParts );
51 #endif
52  if (filenameparts.isEmpty())
53  return new Imp;
54 
55  //We find the relevant part of the filename the following way:
56  //Starting from the back, we find the first part which contains at
57  //least two underscores)
58  int ieventinfo=-1;
59  for (int i=filenameparts.count()-1;i>=0;--i) {
60  if (filenameparts.at(i).count('_')>=2) {
61  ieventinfo = i;
62  break;
63  }
64  }
65  if (ieventinfo==-1)
66  return new Imp;
67 
68 #if QTCORE_VERSION >= 0x050E00
69  QStringList eventinfoparts = filenameparts.at(ieventinfo).split('_', Qt::SkipEmptyParts );
70 #else
71  QStringList eventinfoparts = filenameparts.at(ieventinfo).split('_', QString::SkipEmptyParts );
72 #endif
73  if (eventinfoparts.count()<3)
74  return new Imp;
75  bool ok;
76  int time = eventinfoparts.at(eventinfoparts.count()-1).toInt(&ok);
77  // if (!ok||time<1175378400/*april 1. 2007*/||time>2058991200/*april 1 2035*/)
78  if (!ok||time>2058991200/*april 1 2035*/)//No lower bound sanity check, since the events sometimes have faulty ~1970 timestamps!
79  return new Imp;
80 
81  unsigned long long eventnumber = eventinfoparts.at(eventinfoparts.count()-2).toInt(&ok);
82  if (!ok)
83  return new Imp;
84  int runnumber = eventinfoparts.at(eventinfoparts.count()-3).toInt(&ok);
85  if (!ok)
86  return new Imp;
87  return new Imp(filename,md5sum,runnumber,eventnumber,time,true);
88 }

Member Data Documentation

◆ eventNumber

unsigned long long VP1EventFile::Imp::eventNumber

Definition at line 31 of file VP1EventFile.cxx.

◆ fileName

QString VP1EventFile::Imp::fileName

Definition at line 28 of file VP1EventFile.cxx.

◆ md5Sum

QString VP1EventFile::Imp::md5Sum

Definition at line 29 of file VP1EventFile.cxx.

◆ rawTime

unsigned VP1EventFile::Imp::rawTime

Definition at line 32 of file VP1EventFile.cxx.

◆ runNumber

int VP1EventFile::Imp::runNumber

Definition at line 30 of file VP1EventFile.cxx.

◆ valid

bool VP1EventFile::Imp::valid

Definition at line 33 of file VP1EventFile.cxx.


The documentation for this class was generated from the following file:
AllowedVariables::e
e
Definition: AsgElectronSelectorTool.cxx:37
beamspotman.r
def r
Definition: beamspotman.py:676
VP1EventFile::Imp::Imp
Imp()
Definition: VP1EventFile.cxx:22
VP1EventFile::Imp::runNumber
int runNumber
Definition: VP1EventFile.cxx:30
VP1EventFile::time
QDateTime time() const
Definition: VP1EventFile.cxx:194
VP1EventFile::Imp::rawTime
unsigned rawTime
Definition: VP1EventFile.cxx:32
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
python.getCurrentFolderTag.fn
fn
Definition: getCurrentFolderTag.py:65
convertTimingResiduals.sum
sum
Definition: convertTimingResiduals.py:55
VP1EventFile::Imp::fileName
QString fileName
Definition: VP1EventFile.cxx:28
lumiFormat.i
int i
Definition: lumiFormat.py:85
VP1EventFile::Imp::valid
bool valid
Definition: VP1EventFile.cxx:33
DeMoScan.runnumber
runnumber
Definition: DeMoScan.py:266
VP1EventFile::Imp::eventNumber
unsigned long long eventNumber
Definition: VP1EventFile.cxx:31
VP1EventFile::Imp::md5Sum
QString md5Sum
Definition: VP1EventFile.cxx:29
CaloCellTimeCorrFiller.filename
filename
Definition: CaloCellTimeCorrFiller.py:24