ATLAS Offline Software
Classes | Enumerations | Functions
robmonitor Namespace Reference

Classes

class  ROBDataMonitorStruct
 The structure which is used to monitor the ROB data request in L2 It is created for every addROBData call. More...
 
class  ROBDataStruct
 A structure with data about ROB properties. More...
 

Enumerations

enum  ROBHistory {
  UNCLASSIFIED = 0, RETRIEVED = 1, HLT_CACHED = 2, DCM_CACHED = 4,
  IGNORED = 8, UNDEFINED = 16, NUM_ROBHIST_CODES = 6
}
 A structure with data about ROB properties. More...
 

Functions

std::ostream & operator<< (std::ostream &os, const robmonitor::ROBDataStruct &rhs)
 
std::ostream & operator<< (std::ostream &os, const robmonitor::ROBDataMonitorStruct &rhs)
 

Enumeration Type Documentation

◆ ROBHistory

A structure with data about ROB properties.

Enumerator
UNCLASSIFIED 
RETRIEVED 
HLT_CACHED 
DCM_CACHED 
IGNORED 
UNDEFINED 
NUM_ROBHIST_CODES 

Definition at line 26 of file ROBDataMonitor.h.

26  {
27  UNCLASSIFIED = 0, // ROB was requested but never arrived at processor. History unknown.
28  RETRIEVED = 1, // ROB was retrieved from ROS by DataCollector
29  HLT_CACHED = 2, // ROB was found already in the internal cache of the ROBDataProviderSvc
30  DCM_CACHED = 4, // ROB was found already in the internal cache of the DCM
31  IGNORED = 8, // ROB was on the "ignore" list and therefore not retrieved
32  UNDEFINED = 16, // ROB was not on the "enabled" list, should not happen
33  NUM_ROBHIST_CODES = 6 // number of different history codes
34  };

Function Documentation

◆ operator<<() [1/2]

std::ostream& robmonitor::operator<< ( std::ostream &  os,
const robmonitor::ROBDataMonitorStruct rhs 
)
inline

Definition at line 175 of file ROBDataMonitor.h.

175  {
176  std::string prefix(" ");
177  std::string prefix2("-> ");
178  os << "ROB Request for L1 ID = " << std::dec << rhs.lvl1ID << " (decimal), L1 ID = 0x"
179  << std::hex << rhs.lvl1ID << " (hex)" << std::dec;
180  os << "\n" << prefix << "Requestor name = " << rhs.requestor_name;
181 
182  const std::time_t s_time(rhs.start_time_of_ROB_request.tv_sec);
183  struct tm buf;
184  localtime_r(&s_time, &buf);
185  os << "\n" << prefix << "Start time of ROB request = "
186  << std::put_time(&buf, "%c")
187  << " + " << static_cast<float>(rhs.start_time_of_ROB_request.tv_usec)/1000 << " [ms]";
188 
189  const std::time_t e_time(rhs.end_time_of_ROB_request.tv_sec);
190  localtime_r(&e_time, &buf);
191  os << "\n" << prefix << "Stop time of ROB request = "
192  << std::put_time(&buf, "%c")
193  << " + " << static_cast<float>(rhs.end_time_of_ROB_request.tv_usec)/1000 << " [ms]";
194  os << "\n" << prefix << "Elapsed time for ROB request [ms] = " << rhs.elapsedTime();
195  os << "\n" << prefix << "Requested ROBs:";
196  os << "\n" << prefix << prefix2 << "All " << rhs.allROBs() ;
197  os << "\n" << prefix << prefix2 << "Unclassified " << rhs.unclassifiedROBs() ;
198  os << "\n" << prefix << prefix2 << "HLT Cached " << rhs.HLTcachedROBs() ;
199  os << "\n" << prefix << prefix2 << "DCM Cached " << rhs.DCMcachedROBs() ;
200  os << "\n" << prefix << prefix2 << "Retrieved " << rhs.retrievedROBs() ;
201  os << "\n" << prefix << prefix2 << "Ignored " << rhs.ignoredROBs() ;
202  os << "\n" << prefix << prefix2 << "Undefined " << rhs.undefinedROBs() ;
203  os << "\n" << prefix << prefix2 << "Status OK " << rhs.statusOkROBs() ;
204  for (std::map<const uint32_t,robmonitor::ROBDataStruct>::const_iterator it=rhs.requested_ROBs.begin();
205  it != rhs.requested_ROBs.end(); ++it) {
206  os << "\n" << prefix << prefix2 << (*it).second;
207  }
208  return os;
209  }

◆ operator<<() [2/2]

std::ostream& robmonitor::operator<< ( std::ostream &  os,
const robmonitor::ROBDataStruct rhs 
)
inline

Definition at line 147 of file ROBDataMonitor.h.

147  {
148  os << "[SourceID,Size(words),History,(Status words)]=["
149  << std::hex << std::setfill( '0' ) << "0x" << std::setw(6) << rhs.rob_id
150  << std::dec << std::setfill(' ')
151  << "," << std::setw(8) << rhs.rob_size;
152  os << "," << std::setw(12);
154  os << "UNCLASSIFIED";
155  } else if (rhs.rob_history == robmonitor::RETRIEVED) {
156  os << "RETRIEVED";
157  } else if (rhs.rob_history == robmonitor::HLT_CACHED) {
158  os << "HLT_CACHED";
159  } else if (rhs.rob_history == robmonitor::DCM_CACHED) {
160  os << "DCM_CACHED";
161  }else if (rhs.rob_history == robmonitor::IGNORED) {
162  os << "IGNORED";
163  } else if (rhs.rob_history == robmonitor::UNDEFINED) {
164  os << "UNDEFINED";
165  } else {
166  os << "invalid code";
167  }
168  os << ",(";
169  os << std::hex << std::setfill( '0' ) << "0x" << std::setw(8) << rhs.rob_status_word;
170  os << ")]";
171  return os;
172  }
robmonitor::ROBDataMonitorStruct::retrievedROBs
unsigned retrievedROBs() const
number of retrieved ROBs in structure
Definition: ROBDataMonitor.cxx:117
robmonitor::UNDEFINED
@ UNDEFINED
Definition: ROBDataMonitor.h:32
robmonitor::ROBDataMonitorStruct::start_time_of_ROB_request
struct timeval start_time_of_ROB_request
Definition: ROBDataMonitor.h:114
robmonitor::ROBDataMonitorStruct::ignoredROBs
unsigned ignoredROBs() const
number of ignored ROBs in structure
Definition: ROBDataMonitor.cxx:125
robmonitor::DCM_CACHED
@ DCM_CACHED
Definition: ROBDataMonitor.h:30
skel.it
it
Definition: skel.GENtoEVGEN.py:423
robmonitor::ROBDataMonitorStruct::HLTcachedROBs
unsigned HLTcachedROBs() const
number of ROBDataProviderSvc cached ROBs in structure
Definition: ROBDataMonitor.cxx:101
robmonitor::NUM_ROBHIST_CODES
@ NUM_ROBHIST_CODES
Definition: ROBDataMonitor.h:33
robmonitor::ROBDataStruct::rob_size
uint32_t rob_size
Definition: ROBDataMonitor.h:52
robmonitor::ROBDataMonitorStruct::DCMcachedROBs
unsigned DCMcachedROBs() const
number of DCM cached ROBs in structure
Definition: ROBDataMonitor.cxx:109
robmonitor::ROBDataMonitorStruct::elapsedTime
float elapsedTime() const
elapsed time for ROB request in [ms]
Definition: ROBDataMonitor.cxx:149
robmonitor::IGNORED
@ IGNORED
Definition: ROBDataMonitor.h:31
UNDEFINED
@ UNDEFINED
Definition: sTGCenumeration.h:18
python.DecayParser.buf
buf
print ("=> [%s]"cmd)
Definition: DecayParser.py:27
robmonitor::ROBDataStruct::rob_id
uint32_t rob_id
Definition: ROBDataMonitor.h:51
robmonitor::ROBDataMonitorStruct::undefinedROBs
unsigned undefinedROBs() const
number of undefined ROBs in structure
Definition: ROBDataMonitor.cxx:133
robmonitor::ROBDataStruct::rob_status_word
uint32_t rob_status_word
Definition: ROBDataMonitor.h:54
checkCorrelInHIST.prefix
dictionary prefix
Definition: checkCorrelInHIST.py:391
robmonitor::ROBDataMonitorStruct::lvl1ID
uint32_t lvl1ID
Definition: ROBDataMonitor.h:109
robmonitor::ROBDataStruct::rob_history
robmonitor::ROBHistory rob_history
Definition: ROBDataMonitor.h:53
robmonitor::ROBDataMonitorStruct::statusOkROBs
unsigned statusOkROBs() const
number of ROBs with no status words set in structure
Definition: ROBDataMonitor.cxx:141
ReadFromCoolCompare.os
os
Definition: ReadFromCoolCompare.py:231
robmonitor::ROBDataMonitorStruct::requestor_name
std::string requestor_name
Definition: ROBDataMonitor.h:110
robmonitor::RETRIEVED
@ RETRIEVED
Definition: ROBDataMonitor.h:28
robmonitor::HLT_CACHED
@ HLT_CACHED
Definition: ROBDataMonitor.h:29
robmonitor::ROBDataMonitorStruct::requested_ROBs
std::map< const uint32_t, robmonitor::ROBDataStruct > requested_ROBs
Definition: ROBDataMonitor.h:111
robmonitor::ROBDataMonitorStruct::unclassifiedROBs
unsigned unclassifiedROBs() const
number of unclassified ROBs in structure
Definition: ROBDataMonitor.cxx:93
robmonitor::ROBDataMonitorStruct::end_time_of_ROB_request
struct timeval end_time_of_ROB_request
Definition: ROBDataMonitor.h:115
robmonitor::UNCLASSIFIED
@ UNCLASSIFIED
Definition: ROBDataMonitor.h:27
robmonitor::ROBDataMonitorStruct::allROBs
unsigned allROBs() const
number of ROBs in structure
Definition: ROBDataMonitor.cxx:89