/////////////////////////////////////////////////////////////////////////////// TOfflineMon* gOfflineMon; int offline_monitor_farm() { gOfflineMon = new TOfflineMon; //----------------------------------------------------------------------------- // configure monitoring //----------------------------------------------------------------------------- TOfflineMonitor* mon; bool fFarmEnabled=true; TString parsFile; char dummy[200]; int mask; const char* mon_dir = gSystem->Getenv("OFFLINE_MON_DIR"); parsFile = TString(mon_dir) + "/GlobalMonitor/Enabled.dat"; FILE* fIn = fopen(parsFile.Data(),"r"); while(fscanf(fIn,"%s %d", dummy, &mask)!=EOF) { if(strncmp(dummy,"PRODFARM",8)==0 && mask==1) fFarmEnabled=false; } if(fFarmEnabled) { mon = new TProdFarmMonitor("ProdFarmMonitor"); mon->SetInputDirName("/cdf/data58/s0/production/monitor/ProdFarm/"); mon->SetNtupleFileName("/cdf/data58/s0/production/monitor/ntuples/farm"); gOfflineMon->AddMonitor(mon); //----------------------------------------------------------------------------- // configure monitoring //----------------------------------------------------------------------------- gOfflineMon->Init(); cout<<" monitor init"<UpdateNtuple(); cout<<" monitor updatentuple"<MakePlots(); cout<<" monitor makesplots"<MakeHtml (); cout<<" monitor makehtml"<MakeXml (); cout<<" monitor makexml"<