Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

exotkParameter_Root.hxx

Go to the documentation of this file.
00001 
00002 //   exotkParameter_Root.hxx
00004 //    Copyright (C) 2001  Stephane Routelous
00005 //
00006 //    This file is part of exoTK.
00007 //
00008 //    exoTK is free software; you can redistribute it and/or modify
00009 //    it under the terms of the GNU General Public License as published by
00010 //    the Free Software Foundation; either version 2 of the License, or
00011 //    (at your option) any later version.
00012 //
00013 //    exoTK is distributed in the hope that it will be useful,
00014 //    but WITHOUT ANY WARRANTY; without even the implied warranty of
00015 //    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00016 //    GNU General Public License for more details.
00017 //
00018 //    You should have received a copy of the GNU General Public License
00019 //    along with exoTK; if not, write to the Free Software
00020 //    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00022 
00028 #ifndef _exotkParameter_Root_HeaderFile
00029 #define _exotkParameter_Root_HeaderFile
00030 #if _MSC_VER > 1000
00031 #pragma once
00032 #endif // _MSC_VER > 1000
00033 
00034 #ifndef _MMgt_TShared_HeaderFile
00035 #include <MMgt_TShared.hxx>
00036 #endif
00037 #ifndef _TCollection_AsciiString_HeaderFile
00038 #include <TCollection_AsciiString.hxx>
00039 #endif
00040 #ifndef _Standard_Macro_HeaderFile
00041 #include <Standard_Macro.hxx>
00042 #endif
00043 #ifndef _Standard_DefineHandle_HeaderFile
00044 #include <Standard_DefineHandle.hxx>
00045 #endif
00046 #ifndef _exotkParameter_Type_HeaderFile
00047 #include <exotkParameter_Type.hxx>
00048 #endif
00049 
00050 class Standard_OStream;
00051 
00052 DEFINE_STANDARD_HANDLE(exotkParameter_Root,MMgt_TShared)
00053 
00059 class exotkParameter_Root : public MMgt_TShared  
00060 {
00061 protected:
00062 
00067 Standard_EXPORT exotkParameter_Root();
00068 public:
00069         DEFINE_STANDARD_RTTI(exotkParameter_Root)
00070 
00075 Standard_EXPORT virtual ~exotkParameter_Root();
00076 
00077 
00078 
00085 Standard_EXPORT Standard_Boolean IsCompatible(const Handle_exotkParameter_Root& anOther);
00086 
00092 Standard_EXPORT virtual void DeepCopy(const Handle_exotkParameter_Root& aParameterToCopy) = 0;
00098 Standard_EXPORT TCollection_AsciiString Name() const;
00099 
00105 Standard_EXPORT void SetName(const TCollection_AsciiString& aName);
00106 
00107 
00114 Standard_EXPORT virtual Standard_Boolean SetParameterAsString(const TCollection_AsciiString& aParameter) = 0;
00115 
00121 Standard_EXPORT virtual TCollection_AsciiString ParameterAsString() const =0;
00122 
00123 
00130 Standard_EXPORT void Limits(TCollection_AsciiString& aLowerParameter,TCollection_AsciiString& anUpperParameter);
00131 
00137 Standard_EXPORT exotkParameter_Type Type() const;
00138 
00139 
00146 Standard_EXPORT virtual  Standard_OStream& Dump(Standard_OStream& anOS) const;
00147 
00148 protected:
00149 
00150 
00152         TCollection_AsciiString myName;
00154         TCollection_AsciiString myLowerLimit;
00156         TCollection_AsciiString myUpperLimit;
00158         exotkParameter_Type myType;
00159 };
00160 
00161 #endif // _exotkParameter_Root_HeaderFile

Generated on Wed Jan 23 12:16:43 2002 for exotk by doxygen1.2.12 written by Dimitri van Heesch, © 1997-2001