#include "CbmTofOnlineDisplay.h" #include "FairLogger.h" #include "TCanvas.h" #include "TPad.h" #include "TStyle.h" #include "TH1.h" #include "TString.h" #include "TROOT.h" // ---- Default constructor ------------------------------------------- CbmTofOnlineDisplay::CbmTofOnlineDisplay() :FairTask("CbmTofOnlineDisplay"), fOverview(NULL), fNumberOfTDC(24), fUpdateInterval(100), fEventCounter(0) { fLogger->Debug(MESSAGE_ORIGIN,"Defaul Constructor of CbmTofOnlineDisplay"); } // ---- Destructor ---------------------------------------------------- CbmTofOnlineDisplay::~CbmTofOnlineDisplay() { fLogger->Debug(MESSAGE_ORIGIN,"Destructor of CbmTofOnlineDisplay"); } // ---- Initialisation ---------------------------------------------- void CbmTofOnlineDisplay::SetParContainers() { fLogger->Debug(MESSAGE_ORIGIN,"SetParContainers of CbmTofOnlineDisplay"); } // ---- Init ---------------------------------------------------------- InitStatus CbmTofOnlineDisplay::Init() { fLogger->Debug(MESSAGE_ORIGIN,"Initilization of CbmTofOnlineDisplay"); fOverview = new TCanvas("Overview","Overview",48,56,700,700); fOverview->Divide(5,5,0.01,0.01); // can->Divide(2,2,0,0); Float_t lsize=0.07; // Should be set for each pad of the Canvas gPad->SetFillColor(0); gStyle->SetPalette(1); gStyle->SetLabelSize(lsize); TH1 *h1; for(Int_t iCh=0; iChcd(iCh+1); gROOT->cd(); TString hname=Form("tof_trb_ch_occ_%03d",iCh); h1=(TH1 *)gROOT->FindObjectAny(hname); if (h1!=NULL) { h1->Draw(""); gPad->SetLogy(); } else { LOG(INFO)<<"Histogram "<Debug(MESSAGE_ORIGIN,"Initilization of CbmTofOnlineDisplay"); return kSUCCESS; } // ---- Exec ---------------------------------------------------------- void CbmTofOnlineDisplay::Exec(Option_t* option) { fEventCounter++; if ( 0 == fEventCounter%fUpdateInterval ) { LOG(DEBUG)<<"Update Canvas for Event "<< fEventCounter << FairLogger::endl; for(Int_t iCh=0; iChcd(iCh+1); gPad->Modified(); gPad->Update(); } fOverview->Modified(); fOverview->Update(); } } // ---- Finish -------------------------------------------------------- void CbmTofOnlineDisplay::Finish() { LOG(INFO)<<"Finish of CbmTofOnlineDisplay"<Update(); } ClassImp(CbmTofOnlineDisplay)