base.h

Go to the documentation of this file.
00001 #ifndef __base_h
00002 #define __base_h
00003 
00004 #include  "vertex.h"
00005 #include  <string>
00006 
00007 /**************************************************/
00008 
00009 namespace Gascoigne
00010 {
00011 class Base
00012 {
00013  protected:
00014   
00015   void error(const std::string& s) const
00016     {
00017       std::cout << "Base::" << s << " not written !\n"; 
00018       abort();
00019     }
00020 
00021  public:
00022 
00023   virtual ~Base(){}
00024   
00025   virtual const Vertex2d*  normal2d() const {return NULL;}
00026   virtual const Vertex2d*  tangent2d() const {return NULL;}
00027 
00028   virtual const Vertex3d*  normal3d() const {return NULL;}
00029   virtual const Vertex3d*  tangent3d() const {return NULL;}
00030   virtual const fixarray<2,int>* faces() const
00031     { error("faces");return NULL;}
00032 
00033   virtual double psi(int i, double x) const
00034     { error("psi"); return 0;}
00035 
00036   virtual void point(const Vertex2d&) const
00037     { error("point");}
00038 
00039   virtual void point(const Vertex3d&) const
00040     { error("point");}
00041 
00042   virtual void point_boundary_2d(int, const Vertex1d&) const
00043     { error("point_boundary");}
00044 
00045   virtual void point_boundary_3d(int, const Vertex2d&) const
00046     { error("point_boundary");}  
00047 };
00048 }
00049 
00050 #endif

Generated on Thu Sep 14 10:34:35 2006 for Gascoigne by  doxygen 1.4.7