CDetectorSetup.h
//-----------------------------------------------------------------------------
// $Header: /asis/offline/ceres/cool/project/RCS/CDetectorSetup.h,v 2.3 1997/07/16 11:29:16 messer Exp $
//
// COOL Program Library
// Copyright (C) CERES collaboration, 1996
//
// Declarations for CDetectorSetup class.
//
//-----------------------------------------------------------------------------
#ifndef CDETECTORSETUP_H
#define CDETECTORSETUP_H
#include "cool.h"
#include "CSetup.h"
class CDetectorSetup: public CSetup {
public:
CDetectorSetup();
public:
void _read(const char*);
void _list(ostream& = cout);
void read(const char* file);
void list(ostream& ost = cout);
public:
int getDataLabel() const { return dataLabel; }
int getPedestalLabel() const { return pedestalLabel; }
int getWarningLevel() const { return warningLevel; }
double getXOffset() const { return xOffset; }
double getYOffset() const { return yOffset; }
int getNumberOfTestParameters() const { return numberOfTestParameters; }
inline double getTestParameters(int) const;
void setDataLabel(const int dl) { dataLabel = dl; }
void setPedestalLabel(const int pl) { pedestalLabel = pl; }
void setWarningLevel(int val) { warningLevel = val; }
void setXOffset(const double x) { xOffset = x; }
void setYOffset(const double y) { yOffset = y; }
protected:
int dataLabel;
int pedestalLabel;
int warningLevel; // how many error messages do you want?
double xOffset; // x,y offset in detector specific coordinates
double yOffset;
int numberOfTestParameters;
double *testParameters;
};
inline double CDetectorSetup::getTestParameters(int i) const
{
if (i<0 || i>=numberOfTestParameters)
return 0.;
else
return testParameters[i];
}
#endif /* CDETECTORSETUP_H */