|
//____________________________________________________________________ // // Base class for a Cherenkov calibration module // Register the parameter element in the manager at init time // //____________________________________________________________________ // // $Id: BrChkvCalModule.cxx,v 1.3 2001/10/23 20:51:23 ouerdane Exp $ // $Author: ouerdane $ // $Date: 2001/10/23 20:51:23 $ // $Copyright: (C) 2001 BRAHMS Collaboration <brahmlib@rhic.bnl.gov> // #ifndef BRAT_BrChkvCalModule #include "BrChkvCalModule.h" #endif #ifndef ROOT_TDirectory #include "TDirectory.h" #endif #ifndef WIN32 #include <iostream> #else #include <iostream.h> #endif #ifndef BRAT_BrParameterDbManager #include "BrParameterDbManager.h" #endif #ifndef BRAT_BrCalibrationManager #include "BrCalibrationManager.h" #endif //____________________________________________________________________ ClassImp(BrChkvCalModule); //____________________________________________________________________ BrChkvCalModule::BrChkvCalModule() : BrModule() { // Default constructor. DO NOT USE SetState(kSetup); fParamsChkv = 0; fCalibration = 0; SetCommitAscii(); // default is false SetSaveAscii(); // default is false SetLoadAscii(); // default is false SetEnergyThreshold(); // default is 0.7 fCalibFile = '0'; } //____________________________________________________________________ BrChkvCalModule::BrChkvCalModule(const Char_t* name, const Char_t* title) : BrModule(name, title) { // Named Constructor SetState(kSetup); fParamsChkv = 0; fCalibration = 0; SetCommitAscii(); // default is false SetSaveAscii(); // default is false SetLoadAscii(); // default is false SetEnergyThreshold(); // default is 0 fCalibFile = '0'; } //____________________________________________________________________ void BrChkvCalModule::Init() { // Job-level initialisation SetState(kInit); // ------------------------------------------- // calibration parameters and others BrParameterDbManager* parMan = BrParameterDbManager::Instance(); fParamsChkv = (BrChkvParameters*)parMan->GetDetectorParameters("BrChkvParameters", GetName()); fValidTube = new Bool_t [fParamsChkv->GetNoTubes()]; for (Int_t i = 1; i < fParamsChkv->GetNoTubes(); i++) fValidTube[i - 1] = kTRUE; BrCalibrationManager* calMan = BrCalibrationManager::Instance(); if (!calMan) { Abort("Init", "could not get calibration manager"); return; } fCalibration = (BrChkvCalibration*)calMan->Register("BrChkvCalibration", GetName()); if (!fCalibration) { Abort("Init", "could not get calibration parameters"); return; } if (fCommitAscii) { fSaveAscii = kFALSE; fLoadAscii = kFALSE; if (Verbose() > 1) cout << " ---> Will COMMIT calibration to ascii file " << fCalibFile.Data() << " to SQL database " << endl; } if (fSaveAscii) { fCommitAscii = kFALSE; fLoadAscii = kFALSE; if (Verbose() > 1) cout << " ----> Will SAVE calibration to ascii file " << fCalibFile.Data() << endl; } if (fLoadAscii) { fSaveAscii = kFALSE; fCommitAscii = kFALSE; if (Verbose() > 1) cout << " ----> LOADING calibration from ascii file " << fCalibFile.Data() << endl; } if (!fSaveAscii && !fCommitAscii && !fLoadAscii) if (Verbose() > 1) Warning("Init", " * No ascii calibration loaded or saved or committed *"); } //____________________________________________________________________ void BrChkvCalModule::SaveAscii() { if (fCalibFile == "") { cout << " You forgot to set a calibration file for " << GetName() << ".n Please provide it now: " << flush; cin >> fCalibFile; cout << endl; } } //____________________________________________________________________ void BrChkvCalModule::ReadAscii() { if (fCalibFile == "") { cout << " You forgot to set a calibration file for " << GetName() << ".n Please provide it now: " << flush; cin >> fCalibFile; cout << endl; } } //____________________________________________________________________ void BrChkvCalModule::Event(BrEventNode* inNode, BrEventNode* outNode) { // temporary: before a production mode, I prefer committing from a // file with parameters saved in a previous pass. if (fCommitAscii || fLoadAscii) { if (Verbose() > 10) Warning("Event", "No need to scan event nodes, you only want to " "commit or load from ascii file"); return; } } //____________________________________________________________________ // // $Log: BrChkvCalModule.cxx,v $ // Revision 1.3 2001/10/23 20:51:23 ouerdane // Updated modules ala tof or bb, with Set[Save,Commit,Load]Ascii, etc // // Revision 1.2 2001/10/08 11:27:29 cholm // Changed to use new DB access classes // // Revision 1.1 2001/07/20 16:05:30 ouerdane // Added new directory modules/calib/chkv // Contains: // BrChkvCalModule : base class for cherenkov detector calibration modules // BrChkvPedCalModule : pedestal calibration module // stuff for compilation // Makefile.am // Include.h // LinkDef.h // |
||||||
This page automatically generated by script docBrat by Christian Holm |
Copyright ; 2002 BRAHMS Collaboration
<brahmlib@rcf.rhic.bnl.gov>
|