problemdescriptorbase.h

Go to the documentation of this file.
00001 #ifndef __ProblemDescriptorBase_h
00002 #define __ProblemDescriptorBase_h
00003 
00004 #include "problemdescriptorinterface.h"
00005 
00006 /*--------------------------------------------------*/
00007 
00008 namespace Gascoigne
00009 {
00010 class ProblemDescriptorBase : public ProblemDescriptorInterface
00011 {
00012  private:
00013   
00014   Equation                 *EQ;
00015   BoundaryManager          *BM;
00016   ExactSolution            *ES;
00017   Application              *RHS;
00018   Application              *IC;
00019   DirichletData            *DD;
00020   BoundaryRightHandSide    *BRHS;
00021   BoundaryInitialCondition *BIC;
00022   BoundaryEquation         *BE;
00023   ComponentInformation     *CI;
00024 
00025   
00026   const ParamFile *_paramfile;
00027   
00028  protected:
00029   
00030   const ParamFile*& GetParamFilePointer()           { return _paramfile;}
00031   
00032   Equation*&                 GetEquationPointer()                 { return EQ;}
00033   BoundaryManager*&          GetBoundaryManagerPointer()          { return BM;}
00034   ExactSolution*&            GetExactSolutionPointer()            { return ES;}
00035   Application*&              GetInitialConditionPointer()         { return IC;}
00036   Application*&              GetRightHandSidePointer()            { return RHS;}
00037   DirichletData*&            GetDirichletDataPointer()            { return DD;}
00038   BoundaryRightHandSide*&    GetBoundaryRightHandSidePointer()    { return BRHS;}
00039   BoundaryInitialCondition*& GetBoundaryInitialConditionPointer() { return BIC;}
00040   BoundaryEquation*&         GetBoundaryEquationPointer()         { return BE; }
00041 
00042   BoundaryManager* GetBoundaryManager () { return BM;}
00043 
00044   ComponentInformation*&  GetComponentInformationPointer ()        { return CI;}
00045 
00046  public:
00047 
00048   ProblemDescriptorBase();
00049 
00050   ~ProblemDescriptorBase();
00051 
00052   std::ostream& OutputSettings(std::ostream& os) const;
00053   
00054   void BasicInit(const ParamFile* pf);
00055   
00056   const ParamFile* GetParamFile() const {return _paramfile;}
00057 
00058   const Application*              GetRightHandSide           () const { return RHS;}
00059   const DirichletData*            GetDirichletData           () const { return DD;}
00060   const BoundaryRightHandSide*    GetBoundaryRightHandSide   () const { return BRHS;}
00061   const BoundaryInitialCondition* GetBoundaryInitialCondition() const { return BIC;}
00062   const BoundaryEquation*         GetBoundaryEquation        () const { return BE;}
00063   const Application*              GetInitialCondition        () const { return IC;}
00064   const ExactSolution*            GetExactSolution           () const { return ES;}
00065   const Equation*                 GetEquation                () const { return EQ;}
00066   const BoundaryManager*          GetBoundaryManager         () const { return BM;}
00067   const ComponentInformation*     GetComponentInformation    () const { return CI;}
00068 
00069   void SetTime(double time, double dt) const;
00070 };
00071 
00072 
00073  
00074 }
00075 
00076 /*--------------------------------------------------*/
00077 
00078 #endif

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