OMKConfigurationParameterDescriptor.h

Go to the documentation of this file.
00001  /*
00002  * This file is part of openMask © INRIA, CNRS, Universite de Rennes 1 1993-2002, thereinafter the Software
00003  * 
00004  * The Software has been developped within the Siames Project. 
00005  * INRIA, the University of Rennes 1 and CNRS jointly hold intellectual property rights
00006  * 
00007  * The Software has been registered with the Agence pour la Protection des
00008  * Programmes (APP) under registration number IDDN.FR.001.510008.00.S.P.2001.000.41200
00009  *
00010  * This file may be distributed under the terms of the Q Public License
00011  * version 1.0 as defined by Trolltech AS of Norway and appearing in the file
00012  * LICENSE.QPL included in the packaging of this file.
00013  *
00014  * Licensees holding valid specific licenses issued by INRIA, CNRS or Université de Rennes 1 
00015  * for the software may use this file in accordance with that specific license 
00016  *
00017  */
00018 #ifndef OMKCONFIGURATIONPARAMETERDESCRIPTORHEADER
00019 #define OMKCONFIGURATIONPARAMETERDESCRIPTORHEADER
00020 
00021 #include <string>
00022 
00023 #include "OMKFlowable.h"
00024 
00025 namespace OMK
00026 {
00027 
00034 class OMK_API ConfigurationParameterDescriptor : public Flowable
00035 {
00036 public: 
00038    ConfigurationParameterDescriptor() ;
00039 
00041    ConfigurationParameterDescriptor(const ConfigurationParameterDescriptor &) ;
00042 
00044    virtual ~ConfigurationParameterDescriptor() ;
00045 
00047    virtual const std::string & getAssociatedString () const = 0 ; 
00048 
00050    virtual const ConfigurationParameterDescriptor * getSubDescriptorByName (const std::string & descriptorName ) const = 0;
00051    
00053    virtual const ConfigurationParameterDescriptor * getSubDescriptorByPosition (int descriptorPosition) const = 0;
00054 
00056    virtual ConfigurationParameterDescriptor * getSubDescriptorByName (const std::string & descriptorName ) = 0;
00057    
00059    virtual ConfigurationParameterDescriptor * getSubDescriptorByPosition (int descriptorPosition) = 0;
00060 
00062    virtual int getNumberOfSubItems () const = 0;
00063 
00065    virtual int appendSubDescriptor(ConfigurationParameterDescriptor * subDescriptor ) = 0 ;
00066 
00067 
00069    virtual int appendSubDescriptorNamed (const std::string & descriptorName, ConfigurationParameterDescriptor * subDescriptor )  = 0 ;
00070 
00073    virtual ConfigurationParameterDescriptor * clone () const = 0 ;
00074 
00077    virtual void extract (std::istream & = std::cin) = 0 ;
00078 
00081    virtual void insertInStream (std::ostream & = std::cout) const = 0 ;
00082 
00085    virtual void printToStream (std::ostream & out, int offset ) const = 0 ;
00086 
00088    virtual void unpack (IncomingSynchronisationMessage &) = 0 ;
00089    
00091    virtual void pack (OutgoingSynchronisationMessage &) const = 0 ;
00092 
00093 };
00094 
00096 void printTabToStream (std::ostream & out, int nbSpaces) ;
00097 } // namespace OMK
00098 
00099 #endif // OMKCONFIGURATIONPARAMETERDESCRIPTORHEADER
00100 

logo OpenMask

Documentation generated on Mon Jun 9 11:45:56 2008

Generated with doxygen by Dimitri van Heesch ,   1997-2007