#include <StorageManager.h>
Public Member Functions | |
StorageManager (xdaq::ApplicationStub *s) | |
Private Types | |
typedef ConsumerUtils < Configuration, EventQueueCollection > | ConsumerUtils_t |
Private Member Functions | |
void | bindConsumerCallbacks () |
void | bindI2OCallbacks () |
void | bindStateMachineCallbacks () |
void | bindWebInterfaceCallbacks () |
void | consumerListWebPage (xgi::Input *in, xgi::Output *out) throw (xgi::exception::Exception) |
void | consumerStatisticsPage (xgi::Input *in, xgi::Output *out) throw ( xgi::exception::Exception ) |
void | css (xgi::Input *in, xgi::Output *out) throw (xgi::exception::Exception) |
void | defaultWebPage (xgi::Input *in, xgi::Output *out) throw (xgi::exception::Exception) |
void | dqmEventStatisticsWebPage (xgi::Input *in, xgi::Output *out) throw (xgi::exception::Exception) |
void | fileStatisticsWebPage (xgi::Input *in, xgi::Output *out) throw (xgi::exception::Exception) |
xoap::MessageReference | handleFSMSoapMessage (xoap::MessageReference) throw ( xoap::exception::Exception ) |
void | initializeSharedResources () |
void | inputWebPage (xgi::Input *in, xgi::Output *out) throw (xgi::exception::Exception) |
StorageManager & | operator= (StorageManager const &) |
void | processConsumerEventRequest (xgi::Input *in, xgi::Output *out) throw ( xgi::exception::Exception ) |
void | processConsumerHeaderRequest (xgi::Input *in, xgi::Output *out) throw ( xgi::exception::Exception ) |
void | processConsumerRegistrationRequest (xgi::Input *in, xgi::Output *out) throw ( xgi::exception::Exception ) |
void | processDQMConsumerEventRequest (xgi::Input *in, xgi::Output *out) throw ( xgi::exception::Exception ) |
void | processDQMConsumerRegistrationRequest (xgi::Input *in, xgi::Output *out) throw ( xgi::exception::Exception ) |
void | rbsenderDetailWebPage (xgi::Input *in, xgi::Output *out) throw (xgi::exception::Exception) |
void | rbsenderWebPage (xgi::Input *in, xgi::Output *out) throw (xgi::exception::Exception) |
void | receiveDataMessage (toolbox::mem::Reference *ref) |
void | receiveDQMMessage (toolbox::mem::Reference *ref) |
void | receiveEndOfLumiSectionMessage (toolbox::mem::Reference *ref) |
void | receiveErrorDataMessage (toolbox::mem::Reference *ref) |
void | receiveRegistryMessage (toolbox::mem::Reference *ref) |
void | startWorkerThreads () |
StorageManager (StorageManager const &) | |
void | storedDataWebPage (xgi::Input *in, xgi::Output *out) throw (xgi::exception::Exception) |
void | throughputWebPage (xgi::Input *in, xgi::Output *out) throw (xgi::exception::Exception) |
Private Attributes | |
boost::scoped_ptr < ConsumerUtils_t > | consumerUtils_ |
boost::scoped_ptr< DiskWriter > | diskWriter_ |
boost::scoped_ptr < DQMEventProcessor > | dqmEventProcessor_ |
boost::scoped_ptr < FragmentProcessor > | fragmentProcessor_ |
SharedResourcesPtr | sharedResources_ |
boost::scoped_ptr < SMWebPageHelper > | smWebPageHelper_ |
Main class of the StorageManager XDAQ application
Definition at line 46 of file StorageManager.h.
|
private |
Definition at line 230 of file StorageManager.h.
StorageManager::StorageManager | ( | xdaq::ApplicationStub * | s | ) |
Definition at line 39 of file StorageManager.cc.
References bindConsumerCallbacks(), bindI2OCallbacks(), bindStateMachineCallbacks(), bindWebInterfaceCallbacks(), alignCSCRings::e, cppFunctionSkipper::exception, edm::hlt::Exception, initializeSharedResources(), and startWorkerThreads().
|
private |
|
private |
Bind callbacks for consumers
Definition at line 138 of file StorageManager.cc.
References processConsumerEventRequest(), processConsumerHeaderRequest(), processConsumerRegistrationRequest(), processDQMConsumerEventRequest(), and processDQMConsumerRegistrationRequest().
Referenced by StorageManager().
|
private |
Bind callbacks for I2O message
Definition at line 72 of file StorageManager.cc.
References I2O_SM_DATA, I2O_SM_DQM, I2O_SM_ERROR, I2O_SM_PREAMBLE, receiveDataMessage(), receiveDQMMessage(), receiveEndOfLumiSectionMessage(), receiveErrorDataMessage(), and receiveRegistryMessage().
Referenced by StorageManager().
|
private |
Bind callbacks for state machine SOAP messages
Definition at line 97 of file StorageManager.cc.
References handleFSMSoapMessage().
Referenced by StorageManager().
|
private |
Bind callbacks for web interface
Definition at line 122 of file StorageManager.cc.
References consumerListWebPage(), consumerStatisticsPage(), css(), defaultWebPage(), dqmEventStatisticsWebPage(), fileStatisticsWebPage(), inputWebPage(), rbsenderDetailWebPage(), rbsenderWebPage(), storedDataWebPage(), and throughputWebPage().
Referenced by StorageManager().
|
private |
Callback returning a XML list of consumer information. The current implementation just returns an empty document.
Definition at line 603 of file StorageManager.cc.
References dbtoconf::out.
Referenced by bindWebInterfaceCallbacks().
|
private |
Webinterface callback creating web page showing the connected consumers
Definition at line 425 of file StorageManager.cc.
References alignCSCRings::e, cppFunctionSkipper::exception, edm::hlt::Exception, and dbtoconf::out.
Referenced by bindWebInterfaceCallbacks().
|
private |
Webinterface callback for style sheet
Definition at line 337 of file StorageManager.cc.
References recoMuon::in, and dbtoconf::out.
Referenced by bindWebInterfaceCallbacks().
|
private |
Webinterface callback creating default web page
Definition at line 344 of file StorageManager.cc.
References alignCSCRings::e, cppFunctionSkipper::exception, edm::hlt::Exception, and dbtoconf::out.
Referenced by bindWebInterfaceCallbacks().
|
private |
Webinterface callback creating web page showing statistics about the processed DQM events.
Definition at line 547 of file StorageManager.cc.
References alignCSCRings::e, cppFunctionSkipper::exception, edm::hlt::Exception, and dbtoconf::out.
Referenced by bindWebInterfaceCallbacks().
|
private |
Webinterface callback creating web page showing information about recently written files
Definition at line 519 of file StorageManager.cc.
References alignCSCRings::e, cppFunctionSkipper::exception, edm::hlt::Exception, and dbtoconf::out.
Referenced by bindWebInterfaceCallbacks().
|
private |
Callback for SOAP message containint a state machine event, possibly including new configuration values
Definition at line 619 of file StorageManager.cc.
References edmPickEvents::command, stor::soaputils::createFsmSoapResponseMsg(), alignCSCRings::e, cppFunctionSkipper::exception, edm::hlt::Exception, cms::Exception::explainSelf(), stor::soaputils::extractParameters(), and lumiQueryAPI::msg.
Referenced by bindStateMachineCallbacks().
|
private |
Initialize the shared resources
Definition at line 151 of file StorageManager.cc.
References stor::QueueConfigurationParams::commandQueueSize_, edm::errors::Configuration, consumerUtils_, stor::QueueConfigurationParams::dqmEventQueueMemoryLimitMB_, stor::QueueConfigurationParams::dqmEventQueueSize_, stor::QueueConfigurationParams::fragmentQueueMemoryLimitMB_, stor::QueueConfigurationParams::fragmentQueueSize_, instance, stor::QueueConfigurationParams::registrationQueueSize_, reset(), sharedResources_, smWebPageHelper_, stor::QueueConfigurationParams::streamQueueMemoryLimitMB_, and stor::QueueConfigurationParams::streamQueueSize_.
Referenced by StorageManager().
|
private |
Webinterface callback creating web page showing the I2O input information
Definition at line 371 of file StorageManager.cc.
References alignCSCRings::e, cppFunctionSkipper::exception, edm::hlt::Exception, and dbtoconf::out.
Referenced by bindWebInterfaceCallbacks().
|
private |
|
private |
Callback handling event consumer event request
Definition at line 718 of file StorageManager.cc.
References recoMuon::in, and dbtoconf::out.
Referenced by bindConsumerCallbacks().
|
private |
Callback handling event consumer init message request
Definition at line 710 of file StorageManager.cc.
References recoMuon::in, and dbtoconf::out.
Referenced by bindConsumerCallbacks().
|
private |
Callback handling event consumer registration request
Definition at line 702 of file StorageManager.cc.
References recoMuon::in, and dbtoconf::out.
Referenced by bindConsumerCallbacks().
|
private |
Callback handling DQM event consumer DQM event request
Definition at line 734 of file StorageManager.cc.
References recoMuon::in, and dbtoconf::out.
Referenced by bindConsumerCallbacks().
|
private |
Callback handling DQM event consumer registration request
Definition at line 726 of file StorageManager.cc.
References recoMuon::in, and dbtoconf::out.
Referenced by bindConsumerCallbacks().
|
private |
Webinterface callback creating web page showing detailed information about the resource broker sending data.
Definition at line 482 of file StorageManager.cc.
References alignCSCRings::e, cppFunctionSkipper::exception, edm::hlt::Exception, recoMuon::in, and dbtoconf::out.
Referenced by bindWebInterfaceCallbacks().
|
private |
Webinterface callback creating web page showing summary information about the resource broker sending data.
Definition at line 454 of file StorageManager.cc.
References alignCSCRings::e, cppFunctionSkipper::exception, edm::hlt::Exception, and dbtoconf::out.
Referenced by bindWebInterfaceCallbacks().
|
private |
Callback for I2O message containing an event
Definition at line 272 of file StorageManager.cc.
References stor::FragmentMonitorCollection::addEventFragmentSample(), alignCSCRings::r, rand(), sharedResources_, and stor::I2OChain::totalDataSize().
Referenced by bindI2OCallbacks().
|
private |
Callback for I2O message containing a DQM event (histogramms)
Definition at line 305 of file StorageManager.cc.
References stor::FragmentMonitorCollection::addDQMEventFragmentSample(), sharedResources_, and stor::I2OChain::totalDataSize().
Referenced by bindI2OCallbacks().
|
private |
Callback for I2O message notifying the end-of-lumi-section
Definition at line 317 of file StorageManager.cc.
References stor::FragmentMonitorCollection::addFragmentSample(), stor::MonitoredQuantity::addSample(), stor::RunMonitorCollection::getEoLSSeenMQ(), stor::I2OChain::lumiSection(), sharedResources_, and stor::I2OChain::totalDataSize().
Referenced by bindI2OCallbacks().
|
private |
Callback for I2O message containing an error event
Definition at line 293 of file StorageManager.cc.
References stor::FragmentMonitorCollection::addEventFragmentSample(), sharedResources_, and stor::I2OChain::totalDataSize().
Referenced by bindI2OCallbacks().
|
private |
Callback for I2O message containing an init message
Definition at line 253 of file StorageManager.cc.
References stor::MonitoredQuantity::addSample(), stor::FragmentMonitorCollection::getAllFragmentSizeMQ(), stor::ThroughputMonitorCollection::setMemoryPoolPointer(), sharedResources_, and stor::I2OChain::totalDataSize().
Referenced by bindI2OCallbacks().
|
private |
Create and start all worker threads
Definition at line 215 of file StorageManager.cc.
References diskWriter_, dqmEventProcessor_, alignCSCRings::e, cppFunctionSkipper::exception, edm::hlt::Exception, fragmentProcessor_, and sharedResources_.
Referenced by StorageManager().
|
private |
Webinterface callback creating web page showing the stored data information
Definition at line 398 of file StorageManager.cc.
References alignCSCRings::e, cppFunctionSkipper::exception, edm::hlt::Exception, and dbtoconf::out.
Referenced by bindWebInterfaceCallbacks().
|
private |
Webinterface callback creating web page showing statistics about the data throughput in the SM.
Definition at line 574 of file StorageManager.cc.
References alignCSCRings::e, cppFunctionSkipper::exception, edm::hlt::Exception, and dbtoconf::out.
Referenced by bindWebInterfaceCallbacks().
|
private |
Definition at line 231 of file StorageManager.h.
Referenced by initializeSharedResources().
|
private |
Definition at line 227 of file StorageManager.h.
Referenced by startWorkerThreads().
|
private |
Definition at line 228 of file StorageManager.h.
Referenced by startWorkerThreads().
|
private |
Definition at line 226 of file StorageManager.h.
Referenced by startWorkerThreads().
|
private |
Definition at line 224 of file StorageManager.h.
Referenced by initializeSharedResources(), receiveDataMessage(), receiveDQMMessage(), receiveEndOfLumiSectionMessage(), receiveErrorDataMessage(), receiveRegistryMessage(), and startWorkerThreads().
|
private |
Definition at line 232 of file StorageManager.h.
Referenced by initializeSharedResources().