Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members  

orderctrl.h

Go to the documentation of this file.
00001 
00002 // FILE orderctrl.h 
00003 
00004 
00005 #ifndef INCLUDED_ORDCTRL_H
00006 #define INCLUDED_ORDCTRL_H
00007 
00008 
00009 #include "odesolv.h"
00010 
00011 
00017 class ORDER_CTRL : private NAME
00018 {
00019   
00020 public:
00021   
00022   NAME::GetName;
00023   
00032   ORDER_CTRL( int kmax, const string & name );
00033 
00041   virtual int CompOrder( PtrODESolver Solver ) = 0;
00042 
00047   int GetMaxOrder() const; 
00048 
00056   void SetCurOrder( int k );
00057 
00064   int GetCurOrder() const;
00065   
00067   virtual ~ORDER_CTRL() {;}
00068   
00069   
00070 private:
00071 
00073   int CurOrder;
00074   
00076   int MaxOrder;
00077 
00078 };
00079 
00080 
00082 typedef ORDER_CTRL* PtrOrderCtrl;
00083 
00084 
00085 inline ORDER_CTRL :: ORDER_CTRL( int kmax, const string & name ) : 
00086   NAME(name), 
00087   CurOrder(kmax), MaxOrder(kmax) 
00088 {
00089   assert( kmax>0 );
00090 }
00091 
00092 
00093 inline int ORDER_CTRL :: GetMaxOrder() const 
00094 { 
00095   assert( MaxOrder>0 );  
00096   return MaxOrder;  
00097 }
00098 
00099 
00100 inline void ORDER_CTRL :: SetCurOrder( int k ) 
00101 { 
00102   assert( k>0 && k <= GetMaxOrder() );
00103   CurOrder = k;  
00104 }
00105 
00106 
00107 inline int ORDER_CTRL :: GetCurOrder() const
00108 { 
00109   assert( CurOrder > 0 );
00110   return CurOrder;
00111 }
00112 
00113 #endif 

Generated at Sun Oct 14 12:45:40 2001 for VNODE by doxygen1.2.0 written by Dimitri van Heesch, © 1997-2000