Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PktSizeMon.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file PktSizeMon.h
1 #ifndef __PKTSIZEMON_H__
2 #define __PKTSIZEMON_H__
3 
4 #include <onlmon/OnlMon.h>
5 
6 #include <map>
7 #include <string>
8 
9 class Event;
10 class Packet;
11 class TH1;
12 class PktSizeDBodbc;
13 
14 class PktSizeMon : public OnlMon
15 {
16  public:
17  PktSizeMon(const std::string &name = "PKTSIZEMON");
18  virtual ~PktSizeMon();
19 
20  int Init();
21  int process_event(Event *e);
22  int Reset();
23  int EndRun(const int runno);
24  void Print(const std::string &what = "ALL");
25  int UpdateDB(const int runno = 0);
26  // virtual void Verbosity(const int i);
27 
28  protected:
29  int putmapinhisto();
30  int nevnts;
31  TH1 *sizehist = nullptr;
32  Packet *plist[10000]{};
34  std::map<unsigned int, unsigned int> packetsize;
35  std::map<std::string, std::pair<unsigned int, unsigned int> > granulepacketlimits;
36  std::map<unsigned int, std::string> dcmgroups;
37  std::map<std::string, unsigned int> dcmgroupsize;
38  std::map<unsigned int, std::string> fibergroups;
39  std::map<std::string, unsigned int> fibergroupsize;
40 };
41 
42 #endif /* __PKTSIZEMON_H__ */