1 #if !WITHOUT_CMS_FRAMEWORK
8 # include "classlib/utils/Regexp.h"
9 # include "classlib/utils/Error.h"
14 #include "TBufferFile.h"
34 publishFrequency_(5.0)
44 if (host !=
"" && port > 0)
48 net_->updateToCollector(host, port);
56 filter_ =
new lat::Regexp(filter);
59 <<
"Invalid 'filter' parameter value '" << filter <<
"':"
60 <<
" bad regular expression syntax at character "
67 <<
"Invalid regular expression 'filter' parameter value '"
68 << filter <<
"': " << e.explain();
85 double vtime = version * 1
e-9;
93 std::set<std::string> seen;
101 DQMStore::MEMap::iterator
i,
e;
115 seen.insert(fullpath);
128 assert(o.
qdata.empty());
141 TBufferFile buffer(TBufferFile::kWrite);
142 buffer.WriteObject(me.
object_);
146 buffer.WriteObjectAny(0, 0);
147 o.
rawdata.resize(buffer.Length());
148 memcpy(&o.
rawdata[0], buffer.Buffer(), buffer.Length());
155 net_->updateLocalObject(o);
163 if (
net_->removeLocalExcept(seen))
171 net_->sendLocalChanges();
195 #endif // !WITHOUT_CMS_FRAMEWORK
T getUntrackedParameter(std::string const &, T const &) const
static std::recursive_mutex s_mutex
void watchPostEvent(PostEvent::slot_type const &iSlot)
const std::string * dirname
void packScalarData(std::string &into, const char *prefix) const
convert scalar data into a string.
bool wasUpdated(void) const
true if ME was updated in last monitoring cycle
void flush(edm::StreamContext const &sc)
std::vector< unsigned char > DataBlob
static size_t dqmhash(const void *key, size_t keylen)
Kind kind(void) const
Get the type of the monitor element.
~DQMScope(void)
Release access lock to the DQM core.
unsigned long long uint64_t
static void packQualityData(std::string &into, const QReports &qr)
DQMService(const edm::ParameterSet &pset, edm::ActivityRegistry &ar)