Back to home page

sPhenix code displayed by LXR

 
 

    


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

0001 #include "OnlMon.h"
0002 #include "OnlMonServer.h"
0003 
0004 #include <Event/msg_profile.h>
0005 
0006 #include <TH1.h>
0007 
0008 #include <cstdio>  // for printf
0009 #include <iostream>
0010 #include <sstream>
0011 
0012 class Event;
0013 
0014 OnlMon::OnlMon(const std::string &name)
0015   : OnlMonBase(name)
0016 {
0017   if (name.find('_') != std::string::npos)
0018   {
0019     std::cout << "No underscore (_) in online monitoring server name " << name << " allowed" << std::endl;
0020     exit(1);
0021   }
0022   status = OnlMon::ACTIVE;
0023   return;
0024 }
0025 
0026 int OnlMon::process_event_common(Event *evt)
0027 {
0028   int iret = process_event(evt);
0029   return iret;
0030 }
0031 
0032 int OnlMon::process_event(Event * /*evt*/)
0033 {
0034   std::cout << "process_event(Event *evt) not implemented by daughter class" << std::endl;
0035   return -1;
0036 }
0037 
0038 int OnlMon::Reset()
0039 {
0040   //  cout << "Reset() not implemented by daughter class" << endl;
0041   return -1;
0042 }
0043 
0044 void OnlMon::identify(std::ostream &out) const
0045 {
0046   out << "identify() not implemented by daughter class" << std::endl;
0047   return;
0048 }
0049 
0050 int OnlMon::InitCommon(OnlMonServer *  se)
0051 {
0052 //  m_LocalFrameWorkVars = static_cast<TH1 *>(se->getCommonHisto("FrameWorkVars")->Clone());
0053   se->registerHisto(this,se->getCommonHisto("FrameWorkVars"));
0054   return 0;
0055 }
0056 
0057 int OnlMon::BeginRunCommon(const int /* runno */, OnlMonServer * /*se*/)
0058 {
0059   SetStatus(OnlMon::OK);
0060   return 0;
0061 }
0062 
0063 void OnlMon::SetStatus(const int newstatus)
0064 {
0065   if (newstatus != status)
0066   {
0067     OnlMonServer *se = OnlMonServer::instance();
0068     status = newstatus;
0069     se->SetSubsystemRunStatus(this, status);
0070   }
0071   return;
0072 }
0073 
0074 void OnlMon::SetMonitorServerId(unsigned int i)
0075 {
0076   if (Name().find('_') != std::string::npos)
0077   {
0078     std::cout << "Monitor Server Id was already set " << Name() << std::endl;
0079     return;
0080   }
0081   m_MonitorServerId = i;
0082   Name(Name() + '_' + std::to_string(i));
0083   return;
0084 }
0085