#include <FUShmDQMOutputService.h>
Public Member Functions | |
bool | attachToShm () |
void | defaultWebPage (xgi::Input *in, xgi::Output *out) |
bool | detachFromShm () |
FUShmDQMOutputService (const edm::ParameterSet &pset, edm::ActivityRegistry &actReg) | |
void | postEndJobProcessing () |
void | postEndLumi (edm::LuminosityBlock const &, edm::EventSetup const &) |
void | postEventProcessing (const edm::Event &event, const edm::EventSetup &eventSetup) |
void | postSourceConstructionProcessing (const edm::ModuleDescription &modDesc) |
void | preBeginRun (const edm::RunID &runID, const edm::Timestamp ×tamp) |
void | publish (xdata::InfoSpace *) |
void | reset () |
void | setAttachToShm () |
~FUShmDQMOutputService (void) | |
Public Member Functions inherited from evf::ServiceWeb | |
std::string const & | name () const |
virtual void | publishToXmas (xdata::InfoSpace *) |
ServiceWeb (const std::string &) | |
virtual | ~ServiceWeb () |
Protected Member Functions | |
void | findMonitorElements (DQMEvent::TObjectTable &toTable, std::string folderPath) |
Protected Attributes | |
DQMStore * | bei |
Protected Attributes inherited from evf::ServiceWeb | |
std::string | serviceName_ |
Private Member Functions | |
void | writeShmDQMData (DQMEventMsgBuilder const &dqmMsgBuilder) |
Private Attributes | |
bool | attach_ |
int | compressionLevel_ |
edm::StreamDQMDeserializer | deserializeWorker_ |
const std::string | dqm |
unsigned int | firstLumiSectionSeen_ |
char | host_name_ [255] |
bool | initializationIsNeeded_ |
const std::string | input |
int | lumiSectionInterval_ |
unsigned int | lumiSectionOfPreviousUpdate_ |
double | lumiSectionsPerUpdate_ |
std::vector< char > | messageBuffer_ |
xdata::UnsignedInteger32 | nbUpdates_ |
edm::StreamDQMSerializer | serializeWorker_ |
evf::FUShmBuffer * | shmBuffer_ |
double | timeInSecSinceUTC_ |
uint32 | updateNumber_ |
bool | useCompression_ |
Static Private Attributes | |
static uint32 | fuGuidValue_ = 0 |
static bool | fuIdsInitialized_ = false |
This class is responsible for collecting data quality monitoring (DQM) information, packaging it in DQMEvent objects, and writing out the data to shared memory for the Resource Broker to send to the Storage Manager
27-Dec-2006 - KAB - Initial Implementation 31-Mar-2007 - HWKC - modification for shared memory usage
Definition at line 32 of file FUShmDQMOutputService.h.
FUShmDQMOutputService::FUShmDQMOutputService | ( | const edm::ParameterSet & | pset, |
edm::ActivityRegistry & | actReg | ||
) |
FUShmDQMOutputService constructor.
Definition at line 56 of file FUShmDQMOutputService.cc.
References compressionLevel_, fuGuidValue_, fuIdsInitialized_, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), host_name_, initializationIsNeeded_, dttmaxenums::L, lumiSectionInterval_, lumiSectionsPerUpdate_, messageBuffer_, postEndJobProcessing(), postEndLumi(), postSourceConstructionProcessing(), preBeginRun(), timeInSecSinceUTC_, edm::Guid::toString(), useCompression_, edm::ActivityRegistry::watchPostEndJob(), edm::ActivityRegistry::watchPostEndLumi(), edm::ActivityRegistry::watchPostSourceConstruction(), and edm::ActivityRegistry::watchPreBeginRun().
FUShmDQMOutputService::~FUShmDQMOutputService | ( | void | ) |
FUShmDQMOutputService destructor.
Definition at line 134 of file FUShmDQMOutputService.cc.
References shmBuffer_.
bool FUShmDQMOutputService::attachToShm | ( | ) |
Definition at line 421 of file FUShmDQMOutputService.cc.
References evf::FUShmBuffer::getShmBuffer(), and shmBuffer_.
Referenced by postEndLumi().
|
virtual |
Reimplemented from evf::ServiceWeb.
Definition at line 139 of file FUShmDQMOutputService.cc.
bool FUShmDQMOutputService::detachFromShm | ( | ) |
Definition at line 437 of file FUShmDQMOutputService.cc.
References shmBuffer_.
|
protected |
Finds all of the monitor elements under the specified folder, including those in subdirectories.
Definition at line 348 of file FUShmDQMOutputService.cc.
References bei, DQMStore::dirExists(), DQMStore::getContents(), MonitorElement::getRootObject(), DQMStore::getSubdirs(), NULL, and DQMStore::setCurrentFolder().
Referenced by postEndLumi().
void FUShmDQMOutputService::postEndJobProcessing | ( | ) |
Callback to be used after the end job operation has finished. It takes care of any necessary cleanup.
Definition at line 338 of file FUShmDQMOutputService.cc.
References initializationIsNeeded_.
Referenced by FUShmDQMOutputService().
void FUShmDQMOutputService::postEndLumi | ( | edm::LuminosityBlock const & | lb, |
edm::EventSetup const & | es | ||
) |
Definition at line 154 of file FUShmDQMOutputService.cc.
References edm::StreamDQMSerializer::adler32_chksum(), attach_, attachToShm(), bei, edm::StreamDQMSerializer::bufferPointer(), DQMStore::cd(), compressionLevel_, filterCSVwithJSON::copy, edm::StreamDQMSerializer::currentEventSize(), edm::StreamDQMSerializer::currentSpaceUsed(), TrackerOfflineValidation_Dqm_cff::dirName, dqm, edm::LuminosityBlockBase::endTime(), edm::hlt::Exception, findMonitorElements(), firstLumiSectionSeen_, fuGuidValue_, edm::getReleaseVersion(), DQMStore::getSubdirs(), host_name_, initializationIsNeeded_, input, edm::LuminosityBlockBase::luminosityBlock(), lumiSectionInterval_, lumiSectionOfPreviousUpdate_, messageBuffer_, nbUpdates_, NULL, cppFunctionSkipper::operator, edm::LuminosityBlockBase::run(), edm::StreamDQMSerializer::serializeDQMEvent(), serializeWorker_, evf::MicroStateService::setMicroState(), alcazmumu_cfi::src, timeInSecSinceUTC_, updateNumber_, useCompression_, and writeShmDQMData().
Referenced by FUShmDQMOutputService().
void FUShmDQMOutputService::postEventProcessing | ( | const edm::Event & | event, |
const edm::EventSetup & | eventSetup | ||
) |
void FUShmDQMOutputService::postSourceConstructionProcessing | ( | const edm::ModuleDescription & | moduleDesc | ) |
Callback to be used after the input source has been constructed. It takes care of any intialization that is needed by this service.
Definition at line 316 of file FUShmDQMOutputService.cc.
References bei, and cppFunctionSkipper::operator.
Referenced by FUShmDQMOutputService().
void FUShmDQMOutputService::preBeginRun | ( | const edm::RunID & | runID, |
const edm::Timestamp & | timestamp | ||
) |
Callback to be used after the Run has been created by the InputSource but before any modules have seen the Run
Definition at line 326 of file FUShmDQMOutputService.cc.
References initializationIsNeeded_, nbUpdates_, and updateNumber_.
Referenced by FUShmDQMOutputService().
|
virtual |
Implements evf::ServiceWeb.
Definition at line 143 of file FUShmDQMOutputService.cc.
References alignCSCRings::e, edm::hlt::Exception, and nbUpdates_.
|
inline |
Definition at line 53 of file FUShmDQMOutputService.h.
References initializationIsNeeded_, and nbUpdates_.
void FUShmDQMOutputService::setAttachToShm | ( | ) |
|
private |
Writes the specified DQM event message to shared memory.
Definition at line 389 of file FUShmDQMOutputService.cc.
References DQMEventMsgView::eventNumberAtUpdate(), fuGuidValue_, dttmaxenums::L, run_regression::ret, DQMEventMsgView::runNumber(), shmBuffer_, DQMEventMsgBuilder::size(), findQualityFiles::size, DQMEventMsgBuilder::startAddress(), DQMEventMsgView::topFolderName(), and evf::FUShmBuffer::writeDqmEventData().
Referenced by postEndLumi().
|
private |
Definition at line 90 of file FUShmDQMOutputService.h.
Referenced by postEndLumi(), and setAttachToShm().
|
protected |
Definition at line 58 of file FUShmDQMOutputService.h.
Referenced by findMonitorElements(), postEndLumi(), and postSourceConstructionProcessing().
|
private |
Definition at line 75 of file FUShmDQMOutputService.h.
Referenced by FUShmDQMOutputService(), and postEndLumi().
|
private |
Definition at line 77 of file FUShmDQMOutputService.h.
|
private |
Definition at line 85 of file FUShmDQMOutputService.h.
Referenced by postEndLumi().
|
private |
Definition at line 71 of file FUShmDQMOutputService.h.
Referenced by postEndLumi().
|
staticprivate |
Definition at line 88 of file FUShmDQMOutputService.h.
Referenced by FUShmDQMOutputService(), postEndLumi(), and writeShmDQMData().
|
staticprivate |
Initialize the static variables for the filter unit indentifiers.
Definition at line 87 of file FUShmDQMOutputService.h.
Referenced by FUShmDQMOutputService().
|
private |
Definition at line 82 of file FUShmDQMOutputService.h.
Referenced by FUShmDQMOutputService(), and postEndLumi().
|
private |
Definition at line 73 of file FUShmDQMOutputService.h.
Referenced by FUShmDQMOutputService(), postEndJobProcessing(), postEndLumi(), preBeginRun(), and reset().
|
private |
Definition at line 84 of file FUShmDQMOutputService.h.
Referenced by postEndLumi().
|
private |
Definition at line 67 of file FUShmDQMOutputService.h.
Referenced by FUShmDQMOutputService(), and postEndLumi().
|
private |
Definition at line 70 of file FUShmDQMOutputService.h.
Referenced by postEndLumi().
|
private |
Definition at line 68 of file FUShmDQMOutputService.h.
Referenced by FUShmDQMOutputService().
|
private |
Definition at line 66 of file FUShmDQMOutputService.h.
Referenced by FUShmDQMOutputService(), and postEndLumi().
|
private |
Definition at line 81 of file FUShmDQMOutputService.h.
Referenced by postEndLumi(), preBeginRun(), publish(), and reset().
|
private |
Definition at line 76 of file FUShmDQMOutputService.h.
Referenced by postEndLumi().
|
private |
Definition at line 79 of file FUShmDQMOutputService.h.
Referenced by attachToShm(), detachFromShm(), writeShmDQMData(), and ~FUShmDQMOutputService().
|
private |
Definition at line 72 of file FUShmDQMOutputService.h.
Referenced by FUShmDQMOutputService(), and postEndLumi().
|
private |
Definition at line 69 of file FUShmDQMOutputService.h.
Referenced by postEndLumi(), and preBeginRun().
|
private |
Definition at line 74 of file FUShmDQMOutputService.h.
Referenced by FUShmDQMOutputService(), and postEndLumi().