#include <DQMNet.h>
Public Member Functions | |
DQMBasicNet (const std::string &appname="") | |
bool | removeLocalExcept (const std::set< std::string > &known) |
void | reserveLocalSpace (uint32_t size) |
Give a hint of how much capacity to allocate for local objects. More... | |
void | updateLocalObject (Object &o) |
Public Member Functions inherited from DQMImplNet< DQMNet::Object > | |
DQMImplNet (const std::string &appname="") | |
~DQMImplNet (void) override | |
Public Member Functions inherited from DQMNet | |
void | debug (bool doit) |
void | delay (int delay) |
DQMNet (const std::string &appname="") | |
void | listenToCollector (const std::string &host, int port) |
void | lock (void) |
Acquire a lock on the DQM net layer. More... | |
void | run (void) |
void | sendLocalChanges (void) |
void | shutdown (void) |
Stop the network layer and wait it to finish. More... | |
void | staleObjectWaitLimit (lat::TimeSpan time) |
void | start (void) |
void | startLocalServer (int port) |
void | startLocalServer (const char *path) |
void | unlock (void) |
Release the lock on the DQM net layer. More... | |
void | updateToCollector (const std::string &host, int port) |
virtual | ~DQMNet (void) |
Private Attributes | |
ImplPeer * | local_ |
Additional Inherited Members | |
Public Types inherited from DQMImplNet< DQMNet::Object > | |
typedef std::set< std::string > | DirMap |
typedef __gnu_cxx::hash_set< DQMNet::Object, HashOp, HashEqual > | ObjectMap |
typedef std::map< lat::Socket *, ImplPeer > | PeerMap |
Public Types inherited from DQMNet | |
typedef std::vector< unsigned char > | DataBlob |
typedef std::vector< QValue > | QReports |
typedef std::vector< uint32_t > | TagList |
typedef std::list< WaitObject > | WaitList |
Static Public Member Functions inherited from DQMNet | |
static size_t | dqmhash (const void *key, size_t keylen) |
static void | packQualityData (std::string &into, const QReports &qr) |
static bool | setOrder (const CoreObject &a, const CoreObject &b) |
static void | unpackQualityData (QReports &qr, uint32_t &flags, const char *from) |
Static Public Attributes inherited from DQMNet | |
static const uint32_t | DQM_MSG_GET_OBJECT = 3 |
static const uint32_t | DQM_MSG_HELLO = 0 |
static const uint32_t | DQM_MSG_LIST_OBJECTS = 2 |
static const uint32_t | DQM_MSG_UPDATE_ME = 1 |
static const uint32_t | DQM_PROP_ACCUMULATE = 0x00004000 |
static const uint32_t | DQM_PROP_DEAD = 0x00080000 |
static const uint32_t | DQM_PROP_EFFICIENCY_PLOT = 0x00200000 |
static const uint32_t | DQM_PROP_HAS_REFERENCE = 0x00001000 |
static const uint32_t | DQM_PROP_LUMI = 0x00040000 |
static const uint32_t | DQM_PROP_MARKTODELETE = 0x01000000 |
static const uint32_t | DQM_PROP_NEW = 0x00010000 |
static const uint32_t | DQM_PROP_RECEIVED = 0x00020000 |
static const uint32_t | DQM_PROP_REPORT_ALARM |
static const uint32_t | DQM_PROP_REPORT_CLEAR = 0x00000000 |
static const uint32_t | DQM_PROP_REPORT_ERROR = 0x00000100 |
static const uint32_t | DQM_PROP_REPORT_MASK = 0x00000f00 |
static const uint32_t | DQM_PROP_REPORT_OTHER = 0x00000400 |
static const uint32_t | DQM_PROP_REPORT_WARN = 0x00000200 |
static const uint32_t | DQM_PROP_RESET = 0x00008000 |
static const uint32_t | DQM_PROP_STALE = 0x00100000 |
static const uint32_t | DQM_PROP_TAGGED = 0x00002000 |
static const uint32_t | DQM_PROP_TYPE_DATABLOB = 0x00000050 |
static const uint32_t | DQM_PROP_TYPE_INT = 0x00000001 |
static const uint32_t | DQM_PROP_TYPE_INVALID = 0x00000000 |
static const uint32_t | DQM_PROP_TYPE_MASK = 0x000000ff |
static const uint32_t | DQM_PROP_TYPE_REAL = 0x00000002 |
static const uint32_t | DQM_PROP_TYPE_SCALAR = 0x0000000f |
static const uint32_t | DQM_PROP_TYPE_STRING = 0x00000003 |
static const uint32_t | DQM_PROP_TYPE_TH1D = 0x00000012 |
static const uint32_t | DQM_PROP_TYPE_TH1F = 0x00000010 |
static const uint32_t | DQM_PROP_TYPE_TH1S = 0x00000011 |
static const uint32_t | DQM_PROP_TYPE_TH2D = 0x00000022 |
static const uint32_t | DQM_PROP_TYPE_TH2F = 0x00000020 |
static const uint32_t | DQM_PROP_TYPE_TH2S = 0x00000021 |
static const uint32_t | DQM_PROP_TYPE_TH3D = 0x00000032 |
static const uint32_t | DQM_PROP_TYPE_TH3F = 0x00000030 |
static const uint32_t | DQM_PROP_TYPE_TH3S = 0x00000031 |
static const uint32_t | DQM_PROP_TYPE_TPROF = 0x00000040 |
static const uint32_t | DQM_PROP_TYPE_TPROF2D = 0x00000041 |
static const uint32_t | DQM_REPLY_LIST_BEGIN = 101 |
static const uint32_t | DQM_REPLY_LIST_END = 102 |
static const uint32_t | DQM_REPLY_NONE = 103 |
static const uint32_t | DQM_REPLY_OBJECT = 104 |
static const uint32_t | MAX_PEER_WAITREQS = 128 |
Protected Member Functions inherited from DQMImplNet< DQMNet::Object > | |
Peer * | createPeer (lat::Socket *s) override |
Object * | findObject (Peer *p, const std::string &name, Peer **owner=nullptr) override |
Peer * | getPeer (lat::Socket *s) override |
Object * | makeObject (Peer *p, const std::string &name) override |
void | markObjectsDead (Peer *p) override |
void | purgeDeadObjects (Peer *p) override |
void | removePeer (Peer *p, lat::Socket *s) override |
void | sendObjectListToPeer (Bucket *msg, bool all, bool clear) override |
Send all objects to a peer and optionally mark sent objects old. More... | |
void | sendObjectListToPeers (bool all) override |
void | updatePeerMasks (void) override |
Protected Member Functions inherited from DQMNet | |
std::ostream & | logme (void) |
virtual bool | onMessage (Bucket *msg, Peer *p, unsigned char *data, size_t len) |
virtual void | releaseFromWait (Bucket *msg, WaitObject &w, Object *o) |
virtual void | sendObjectToPeer (Bucket *msg, Object &o, bool data) |
virtual bool | shouldStop (void) |
void | updateMask (Peer *p) |
void | waitForData (Peer *p, const std::string &name, const std::string &info, Peer *owner) |
Static Protected Member Functions inherited from DQMNet | |
static void | copydata (Bucket *b, const void *data, size_t len) |
static void | discard (Bucket *&b) |
Protected Attributes inherited from DQMImplNet< DQMNet::Object > | |
PeerMap | peers_ |
Protected Attributes inherited from DQMNet | |
bool | debug_ |
pthread_mutex_t | lock_ |
DQMBasicNet::DQMBasicNet | ( | const std::string & | appname = "" | ) |
Definition at line 1444 of file DQMNet.cc.
References DQMImplNet< DQMNet::Object >::createPeer(), and local_.
bool DQMBasicNet::removeLocalExcept | ( | const std::set< std::string > & | known | ) |
Delete all local objects not in known. Returns true if something was removed. The caller must call sendLocalChanges() later to push out the changes.
Definition at line 1484 of file DQMNet.cc.
References MillePedeFileConverter_cfg::e, mps_fire::i, local_, callgraph::path, and AlCaHLTBitMon_QueryRunRegistry::string.
void DQMBasicNet::reserveLocalSpace | ( | uint32_t | size | ) |
void DQMBasicNet::updateLocalObject | ( | Object & | o | ) |
Update the network cache for an object. The caller must call sendLocalChanges() later to push out the changes.
Definition at line 1460 of file DQMNet.cc.
References DQMNet::CoreObject::dirname, DQMNet::CoreObject::flags, info(), local_, DQMNet::Object::qdata, DQMNet::CoreObject::qreports, DQMNet::Object::rawdata, DQMNet::Object::scalar, std::swap(), DQMNet::CoreObject::tag, and DQMNet::CoreObject::version.
|
private |
Definition at line 621 of file DQMNet.h.
Referenced by DQMBasicNet(), removeLocalExcept(), reserveLocalSpace(), and updateLocalObject().