7 #include "classlib/utils/Error.h" 12 #include "TBufferFile.h" 26 : store_(&*
edm::
Service<
DQMStore>()), net_(nullptr), lastFlush_(0), publishFrequency_(5.0) {
31 int port =
pset.getUntrackedParameter<
int>(
"collectorPort", 9090);
32 bool verbose =
pset.getUntrackedParameter<
bool>(
"verbose",
false);
58 std::set<std::string> seen;
69 if (!
me->wasUpdated())
74 o.flags =
me->data_.flags;
76 o.dirname =
me->data_.dirname.substr(0,
me->data_.dirname.size() - 1);
77 o.objname =
me->data_.objname;
88 me->packScalarData(
o.scalar,
"");
91 TBufferFile
buffer(TBufferFile::kWrite);
94 buffer.WriteObjectAny(
nullptr,
nullptr);
95 o.rawdata.resize(
buffer.Length());
static std::recursive_mutex s_mutex
void lock()
Acquire a lock on the DQM net layer.
void watchPostEvent(PostEvent::slot_type const &iSlot)
void watchPostStreamEndLumi(PostStreamEndLumi::slot_type const &iSlot)
~DQMScope()
Release access lock to the DQM core.
void shutdown()
Stop the network layer and wait it to finish.
virtual std::vector< dqm::harvesting::MonitorElement * > getAllContents(std::string const &path) const
void flush(edm::StreamContext const &sc)
static size_t dqmhash(const void *key, size_t keylen)
unsigned long long uint64_t
bool removeLocalExcept(const std::set< std::string > &known)
static void packQualityData(std::string &into, const QReports &qr)
DQMService(const edm::ParameterSet &pset, edm::ActivityRegistry &ar)
void unlock()
Release the lock on the DQM net layer.
void updateLocalObject(Object &o)
void updateToCollector(const std::string &host, int port)
std::vector< unsigned char > DataBlob