# MultiFunction.h

    00001 #ifndef MULTIFUNCTION_H_
    00002 #define MULTIFUNCTION_H_
    00003
    00004 #include <vector>
    00005
    00006 class Sym;
    00007 class MultiFunctionImpl;
    00008
    00009 class MultiFunction {
    00010     MultiFunction& operator=(const MultiFunction&);
    00011     MultiFunction(const MultiFunction&);
    00012
    00013     MultiFunctionImpl* pimpl;
    00014
    00015     public:
    00016
    00017     MultiFunction(const std::vector<Sym>& pop);
    00018     ~MultiFunction();
    00019
    00020     void operator()(const std::vector<double>& x, std::vector<double>& y);
    00021     void operator()(const double* x, double* y);
    00022
    00023 };
    00024
    00025 #endif
    00026