00001 #ifndef PhysicsTools_IsolationUtils_ConeAreaRootFunction_h 00002 #define PhysicsTools_IsolationUtils_ConeAreaRootFunction_h 00003 00004 // -*- C++ -*- 00005 // 00006 // Package: ConeAreaRootFunction 00007 // Class: ConeAreaRootFunction 00008 // 00017 // 00018 // Original Author: Christian Veelken, UC Davis 00019 // Created: Thu Nov 2 13:47:40 CST 2006 00020 // $Id: ConeAreaRootFunction.h,v 1.1 2007/05/23 20:23:08 veelken Exp $ 00021 // 00022 // 00023 00024 #include "PhysicsTools/IsolationUtils/interface/ConeAreaFunction.h" 00025 00026 // 00027 // class declaration 00028 // 00029 00030 class ConeAreaRootFunction : public ConeAreaFunction 00031 { 00032 public: 00033 ConeAreaRootFunction(); 00034 ConeAreaRootFunction(const ConeAreaRootFunction& bluePrint); 00035 ~ConeAreaRootFunction(); 00036 00037 ConeAreaRootFunction& operator=(const ConeAreaRootFunction& bluePrint); 00038 00039 void SetParameterConeArea(double coneArea); 00040 00041 ROOT::Math::IGenFunction* Clone () const { return new ConeAreaRootFunction(*this); } 00042 00043 private: 00044 void SetParameters(double* param); 00045 00046 double DoEval(double x) const; 00047 00048 double coneArea_; // area covered by cone 00049 00050 static const unsigned int debugLevel_ = 0; 00051 }; 00052 00053 #endif