Back to index

CDetectorSetup.C

 
//----------------------------------------------------------------------------- 
//  $Header: /asis/offline/ceres/cool/project/RCS/CDetectorSetup.C,v 2.3 1997/07/16 11:29:19 messer Exp $ 
// 
//  COOL Program Library   
//  Copyright (C) CERES collaboration, 1996 
// 
//  Implementation of class CDetectorSetup. 
// 
//----------------------------------------------------------------------------- 
#include <iostream.h> 
#include <iomanip.h> 
 
#include "CDetectorSetup.h" 
 
CDetectorSetup::CDetectorSetup() 
{ 
   dataLabel              = 0; 
   pedestalLabel          = 0; 
   warningLevel           = 0;       // default: print all warnings and errors    
   xOffset                = 0; 
   yOffset                = 0; 
   numberOfTestParameters = 0; 
   testParameters         = 0; 
} 
 
void CDetectorSetup::read(const char* filename)     
{  
   CSetup::_read(filename); 
   _read(filename); 
} 
 
void CDetectorSetup::list(ostream& ost) 
{ 
   CSetup::_list(ost); 
   _list(ost);  
} 
 
void CDetectorSetup::_read(const char* filename) 
{ 
   dataLabel              = CGetDefaultValue(filename, "dataLabel", dataLabel); 
   pedestalLabel          = CGetDefaultValue(filename, "pedestalLabel", pedestalLabel); 
   warningLevel           = CGetDefaultValue(filename, "warningLevel", warningLevel);       
   xOffset                = CGetDefaultValue(filename, "xOffset", xOffset); 
   yOffset                = CGetDefaultValue(filename, "yOffset", yOffset); 
   numberOfTestParameters = CGetDefaultValue(filename, "numberOfTestParameters", numberOfTestParameters); 
   if (numberOfTestParameters > 0) { 
      delete testParameters; 
      testParameters = new double[numberOfTestParameters]; 
      CGetDefaultValue(filename, "testParameters", testParameters, numberOfTestParameters); 
   } 
} 
 
void CDetectorSetup::_list(ostream& ost)  
{ 
   ost.setf(ios::left); 
   ost << setw(ListingNameWidth) << "dataLabel:" << dec << dataLabel << endl; 
   ost << setw(ListingNameWidth) << "pedestalLabel:" << dec << pedestalLabel << endl; 
   ost << setw(ListingNameWidth) << "warningLevel:" << warningLevel << endl; 
   ost << setw(ListingNameWidth) << "xOffset:" << dec << xOffset << endl; 
   ost << setw(ListingNameWidth) << "yOffset:" << dec << yOffset << endl; 
   ost << setw(ListingNameWidth) << "numberOfTestParameters:" << dec << numberOfTestParameters << endl; 
   if (numberOfTestParameters > 0) { 
      ost << setw(ListingNameWidth) << "testParameters: " << dec; 
      for (int i=0; i<numberOfTestParameters; i++) { 
	 ost << testParameters[i] << " "; 
      } 
      ost << endl; 
   } 
   ost.unsetf(ios::left); 
} 
 

Back to index