Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-03 08:20:54

0001 #define ONLINE
0002 
0003 #include "CommonFuncs.C"
0004 
0005 #include <onlmon/bbc/BbcMonDraw.h>
0006 
0007 #include <onlmon/OnlMonClient.h>
0008 
0009 #include <onlmon/triggerEnum.h>
0010 
0011 // cppcheck-suppress unknownMacro
0012 R__LOAD_LIBRARY(libonlbbcmon_client.so)
0013 
0014 // 0 is default (looks for things online)
0015 // 1 is online (shift crew)
0016 // 2 localhost
0017 void bbcDrawInit(const int online = 0)
0018 {
0019   OnlMonClient *cl = OnlMonClient::instance();
0020   // register histos we want with monitor name
0021   //  cl->Verbosity(100);
0022   OnlMonDraw *bbcmon = new BbcMonDraw("BBCMONDRAW");  // create Drawing Object
0023   std::string servername = "BBCMON_0";
0024   bbcmon->AddServer(servername);
0025   // south/north to keep them together
0026   cl->registerHisto("bbc_north_chargesum", servername);
0027   cl->registerHisto("bbc_south_chargesum", servername);
0028   cl->registerHisto("bbc_north_hitmap", servername);
0029   cl->registerHisto("bbc_south_hitmap", servername);
0030   cl->registerHisto("bbc_north_hittime", servername);
0031   cl->registerHisto("bbc_south_hittime", servername);
0032   cl->registerHisto("bbc_north_nhit", servername);
0033   cl->registerHisto("bbc_south_nhit", servername);
0034   // all others alphabetically
0035   cl->registerHisto("bbc_adc", servername);
0036   cl->registerHisto("bbc_avr_hittime", servername);
0037   cl->registerHisto("bbc_charge_wave", servername);
0038   cl->registerHisto("bbc_nevent_counter", servername);
0039   cl->registerHisto("bbc_nhit_emcal0", servername);
0040   cl->registerHisto("bbc_nhit_hcal0", servername);
0041   cl->registerHisto("bbc_nhit_emcalmbd0", servername);
0042   cl->registerHisto("bbc_nhit_hcalmbd0", servername);
0043   cl->registerHisto("bbc_nhit_emcal1", servername);
0044   cl->registerHisto("bbc_nhit_hcal1", servername);
0045   cl->registerHisto("bbc_nhit_emcalmbd1", servername);
0046   cl->registerHisto("bbc_nhit_hcalmbd1", servername);
0047   cl->registerHisto("bbc_prescale_hist", servername);
0048   cl->registerHisto("bbc_tdc", servername);
0049   cl->registerHisto("bbc_tdc_overflow", servername);
0050   cl->registerHisto("bbc_tdc_armhittime", servername);
0051   cl->registerHisto("bbc_time_wave", servername);
0052   cl->registerHisto("bbc_trigs", servername);
0053   cl->registerHisto("bbc_tzero_zvtx", servername);
0054   cl->registerHisto("bbc_zvertex", servername);
0055   cl->registerHisto("bbc_zvertex_alltrigger", servername);
0056   cl->registerHisto("bbc_zvertex_ns", servername);
0057   cl->registerHisto("bbc_zvertex_10", servername);
0058   cl->registerHisto("bbc_zvertex_30", servername);
0059   cl->registerHisto("bbc_zvertex_60", servername);
0060   cl->registerHisto("bbc_zvertex_ns_chk", servername);
0061   cl->registerHisto("bbc_zvertex_10_chk", servername);
0062   cl->registerHisto("bbc_zvertex_30_chk", servername);
0063   cl->registerHisto("bbc_zvertex_60_chk", servername);
0064   cl->registerHisto("bbc_zvertex_zdcns", servername);
0065   cl->registerHisto("bbc_zvertex_emcal", servername);
0066   cl->registerHisto("bbc_zvertex_hcal", servername);
0067   cl->registerHisto("bbc_zvertex_emcalmbd", servername);
0068   cl->registerHisto("bbc_zvertex_hcalmbd", servername);
0069   cl->registerHisto("bbc_runvtx", servername);
0070   cl->registerHisto("bbc_runvtxerr", servername);
0071   cl->registerHisto("bbc_runvtxtime", servername);
0072   for ( int i = 0; i < TriggerEnum::NUM_MBD_TRIGGERS; i++ ){
0073       std::string name = Form("bbc_zvertex_autoupdate_%i", i);
0074       cl->registerHisto(name, servername);
0075   }
0076 
0077   // for local host, just call bbcDrawInit(2)
0078   CreateSubsysHostlist("bbc_hosts.list", online);
0079 
0080   // says I know they are all on the same node
0081   cl->requestHistoBySubSystem(servername, 1);
0082   cl->registerDrawer(bbcmon);             // register with client framework
0083 }
0084 
0085 void bbcDraw(const char *what = "ALL")
0086 {
0087   OnlMonClient *cl = OnlMonClient::instance();  // get pointer to framewrk
0088   OnlMonDraw *bbcdraw = cl->GetDrawer("BBCMONDRAW");
0089   for (auto iter = bbcdraw->ServerBegin(); iter != bbcdraw->ServerEnd(); ++iter)
0090   {
0091     cl->requestHistoBySubSystem(iter->c_str(), 1);
0092   }
0093   cl->Draw("BBCMONDRAW", what);                     // Draw Histos of registered Drawers
0094 }
0095 
0096 void bbcSavePlot()
0097 {
0098   OnlMonClient *cl = OnlMonClient::instance();  // get pointer to framewrk
0099   cl->SavePlot("BBCMONDRAW");                         // Save Plots
0100   return;
0101 }
0102 
0103 void bbcHtml()
0104 {
0105   OnlMonClient *cl = OnlMonClient::instance();  // get pointer to framewrk
0106   cl->MakeHtml("BBCMONDRAW");                       // Create html output
0107   return;
0108 }