00001 // -*- C++ -*- 00002 // $Id: AbsFunctional.hh,v 1.4 2002/04/12 15:02:39 evc Exp $ 00003 // A functional is a mapping from functions to real numbers. 00004 // Here is their base class: 00005 #ifndef _AbsFunctional_h_ 00006 #define _AbsFunctional_h_ 00007 #include "CLHEP/config/CLHEP.h" 00008 00009 namespace Genfun { 00010 00011 class AbsFunction; 00012 00017 class AbsFunctional { 00018 00019 public: 00020 00021 // Constructor 00022 AbsFunctional(); 00023 00024 // Destructor: 00025 virtual ~AbsFunctional(); 00026 00027 // A functional is a mapping from functions to 00028 // real numbers. This defines that mapping: 00029 virtual double operator[] (const AbsFunction & function) const = 0; 00030 00031 }; 00032 } // namespace Genfun 00033 #endif