00001 #ifndef TrigConf_METSigParam
00002 #define TrigConf_METSigParam
00003 
00004 #include <string>
00005 
00006 namespace TrigConf {
00007 
00008    class METSigParam {
00009    public:
00010 
00011       METSigParam( int XSSigmaScale, int XSSigmaOffset,
00012                    int XEmin, int XEmax,
00013                    int TESqrtMin, int TESqrtMax );
00014       METSigParam();
00015       virtual ~METSigParam();
00016 
00017       
00018       void setValues( int XSSigmaScale, int XSSigmaOffset,
00019                       int XEmin, int XEmax,
00020                       int TESqrtMin, int TESqrtMax);
00021 
00022       void getValues( int & XSSigmaScale, int & XSSigmaOffset,
00023                       int & XEmin, int & XEmax,
00024                       int & TESqrtMin, int & TESqrtMax) const;
00025 
00026       int xsSigmaScale()  const { return m_xsSigmaScale; }
00027       int xsSigmaOffset() const { return m_xsSigmaOffset; }
00028       int xeMin()         const { return m_XEmin; }
00029       int xeMax()         const { return m_XEmax; }
00030       int teSqrtMin()     const { return m_TESqrtMin; }
00031       int teSqrtMax()     const { return m_TESqrtMax; }
00032 
00033       virtual void print(const std::string& indent="", unsigned int detail=1) const;
00034       virtual void writeXML(std::ostream & xmlfile, int indentLevel, int indentWidth) const;
00035 
00036    private:
00037 
00038       void checkValueRange(int XEmin, int XEmax, int TESqrtMin, int TESqrtMax) const;
00039 
00040       int m_xsSigmaScale;
00041       int m_xsSigmaOffset;
00042       int m_XEmin;
00043       int m_XEmax;
00044       int m_TESqrtMin;
00045       int m_TESqrtMax;
00046    };
00047 
00048 }
00049 
00050 #endif 
00051