#ifndef Function_CCA_H
#define Function_CCA_H

#include "oo/Function.h"

namespace functions
{
  namespace ccaports
  {
    /**
     * This abstract class declares the Function interface.  
     * Inherit from this class to provide functionality.
     */
    class Function:
      public virtual gov::cca::Port,
      public virtual functions::Function
    {
    public:

      /**
       * The destructor should be declared virtual in an interface class.
       */
      virtual ~ Function ()
      {
      }
      /**
       * Returns the function value at x.  Implement this function in
       * a derived class to provide required functionality.
       */ i
      virtual double evaluate (double x) = 0;

    };

  }
}
#endif                          // Function_CCA_H