Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-05 08:20:32

0001 #ifndef TPC_TPCMONDRAW_H
0002 #define TPC_TPCMONDRAW_H
0003 
0004 #include <onlmon/OnlMonDraw.h>
0005 
0006 #include <string>  // for allocator, string
0007 
0008 class TCanvas;
0009 class TGraphErrors;
0010 class TPad;
0011 class TH2;
0012 class TH1;
0013 class TPaveLabel;
0014 
0015 class TpcMonDraw : public OnlMonDraw
0016 {
0017  public:
0018   TpcMonDraw(const std::string &name);
0019 
0020   ~TpcMonDraw() override {}
0021 
0022   int Init() override;
0023   int Draw(const std::string &what = "ALL") override;
0024   int MakeHtml(const std::string &what = "ALL") override;
0025   int SavePlot(const std::string &what = "ALL", const std::string &type = "png") override;
0026 
0027  protected:
0028   int MakeCanvas(const std::string &name);
0029   int DrawTPCModules(const std::string &what = "ALL");
0030   int DrawTPCSampleSize(const std::string &what = "ALL");
0031   int DrawTPCStuckChannels(const std::string &what = "ALL");
0032   int DrawTPCCheckSum(const std::string &what = "ALL");
0033   int DrawTPCParity(const std::string &what = "ALL");
0034   int DrawTPCChansinPacketNS(const std::string &what = "ALL");
0035   int DrawTPCChansinPacketSS(const std::string &what = "ALL");
0036   int DrawTPCChansperLVL1_NS(const std::string &what = "ALL");
0037   int DrawTPCChansperLVL1_SS(const std::string &what = "ALL");
0038   int DrawTPCNonZSChannels(const std::string &what = "ALL");
0039   int DrawTPCZSTriggerADCSample(const std::string &what = "ALL");
0040   int DrawTPCFirstnonZSADCFirstnonZSSample(const std::string &what = "ALL");
0041   int DrawTPCADCSample(const std::string &what = "ALL");
0042   int DrawTPCDriftWindow(const std::string &what = "ALL");
0043   int DrawTPCPedestSubADCSample(const std::string &what = "ALL");
0044   int DrawTPCPedestSubADCSample_R1(const std::string &what = "ALL");
0045   int DrawTPCPedestSubADCSample_R2(const std::string &what = "ALL");
0046   int DrawTPCPedestSubADCSample_R3(const std::string &what = "ALL");
0047   int DrawTPCADCSampleLarge(const std::string &what = "ALL");
0048   int DrawTPCMaxADCModule(const std::string &what = "ALL");
0049   int DrawTPCRawADC1D(const std::string &what = "ALL");
0050   int DrawTPCMaxADC1D(const std::string &what = "ALL");
0051   int DrawTPCPedestSubADC1D(const std::string &what = "ALL");
0052   int DrawTPCXYclusters(const std::string &what = "ALL");
0053   int DrawTPCXYlaserclusters(const std::string &what = "ALL");
0054   int DrawTPCXYclusters5event(const std::string &what = "ALL");
0055   int DrawTPCXYclusters_unweighted(const std::string &what = "ALL");
0056   int DrawTPCZYclusters(const std::string &what = "ALL");
0057   int DrawTPCZYclusters_unweighted(const std::string &what = "ALL");
0058   int DrawTPCchannelphi_layer_weighted(const std::string &what = "ALL");
0059   int DrawTPCNStreaksvsEventNo(const std::string &what = "ALL");
0060   int DrawTPCNEventsvsEBDC(const std::string &what = "ALL");
0061   int DrawTPCPacketTypes(const std::string &what = "ALL");
0062   int DrawTPCPACKETTYPEvsSAMPLEADC (const std::string &what = "ALL");
0063   int DrawTPCNoiseChannelPlots(const std::string &what = "ALL");
0064   int DrawShifterTPCDriftWindow(const std::string &what = "ALL");
0065   int DrawShifterTransmissionDist(const std::string &what = "ALL");
0066   int DrawDCvsSAMPA(const std::string &what = "ALL");
0067   int DrawDCSAMPAvsTIME(const std::string &what = "ALL");
0068   int DrawServerStats();
0069   void add_TH1(TH1* hist[48], TH1* histadd[24]);
0070   void add_TH2(TH2* hist[48], TH2* histadd[24]);  
0071   void add_TH1_modules(TH1* hist[48][3], TH1* histadd[24][3]);
0072   void add_TH2_modules(TH2* hist[48][3], TH2* histadd[24][3]);
0073   time_t getTime();
0074   
0075   TCanvas *TC[40] = {nullptr};
0076   TPad *transparent[40] = {nullptr};
0077   TPad *Pad[11] = {nullptr};
0078   TGraphErrors *gr[2] = {nullptr};
0079   //TPC Module
0080   TH2 *dummy_his1 {nullptr};
0081   TH2 *dummy_his2 {nullptr};
0082 
0083   //TPC Module
0084   TH2 *dummy_his1_XY = nullptr;
0085   TH2 *dummy_his2_XY = nullptr;
0086 
0087   TH2 *dummy_his1_laser_XY = nullptr;
0088   TH2 *dummy_his2_laser_XY = nullptr;
0089 
0090   TH2 *dummy_his1_u5_XY = nullptr;
0091   TH2 *dummy_his2_u5_XY = nullptr;
0092 
0093   TH2 *dummy_his1_ZY = nullptr;
0094 
0095   TH2 *dummy_his1_XY_unw = nullptr;
0096   TH2 *dummy_his2_XY_unw = nullptr;
0097 
0098   TH2 *dummy_his1_ZY_unw = nullptr;
0099 
0100   TH2 *dummy_his1_channelphi_layer_w = nullptr;
0101   TH1 *dummy_his1_NEvents_EBDC = nullptr;
0102 
0103   TPaveLabel* NS18 = nullptr; //North Side labels
0104   TPaveLabel* NS17 = nullptr;
0105   TPaveLabel* NS16 = nullptr;
0106   TPaveLabel* NS15 = nullptr;
0107   TPaveLabel* NS14 = nullptr;
0108   TPaveLabel* NS13 = nullptr;
0109   TPaveLabel* NS12 = nullptr;
0110   TPaveLabel* NS23 = nullptr;
0111   TPaveLabel* NS22 = nullptr;
0112   TPaveLabel* NS21 = nullptr;
0113   TPaveLabel* NS20 = nullptr;
0114   TPaveLabel* NS19 = nullptr;
0115 
0116   TPaveLabel* SS00 = nullptr; //South Side labels
0117   TPaveLabel* SS01 = nullptr;
0118   TPaveLabel* SS02 = nullptr;
0119   TPaveLabel* SS03 = nullptr;
0120   TPaveLabel* SS04 = nullptr;
0121   TPaveLabel* SS05 = nullptr;
0122   TPaveLabel* SS06 = nullptr;
0123   TPaveLabel* SS07 = nullptr;
0124   TPaveLabel* SS08 = nullptr;
0125   TPaveLabel* SS09 = nullptr;
0126   TPaveLabel* SS10 = nullptr;
0127   TPaveLabel* SS11 = nullptr;
0128 };
0129 
0130 #endif /* TPC_TPCMONDRAW_H */