00001 #ifndef _MY__FCompoundVector_ 00002 #define _MY_FCompoundVector_ 00003 #include "sfunctions.h" 00004 00005 00013 class FCompoundVector : public Function3D 00014 { 00015 private: 00016 std::vector<Function3D*> m_fComponents; 00017 bool m_deleteObjs; 00018 protected: 00019 00020 public: 00021 FCompoundVector(Function3D *f1, Function3D *f2, Function3D *f3,bool deleteObjs=false); 00022 FCompoundVector(Function3D *f1, Function3D *f2,bool deleteObjs=false); 00023 FCompoundVector(std::vector<Function3D*> &vF,bool deleteObjs=false); 00024 virtual ~FCompoundVector(); 00025 virtual bool isInDomain(const VecDouble &p,unsigned component=0) const; 00026 virtual double operator() (const VecDouble &p, const unsigned int component=0) const; 00027 00028 }; 00029 00030 #endif