source: XIOS/dev/dev_ym/XIOS_COUPLING/src/object.hpp @ 1848

Last change on this file since 1848 was 1848, checked in by ymipsl, 22 months ago

Supress unusefull idServer context variable that create some trouble when sending context attribute to server.

YM

  • Property copyright set to
    Software name : XIOS (Xml I/O Server)
    http://forge.ipsl.jussieu.fr/ioserver
    Creation date : January 2009
    Licence : CeCCIL version2
    see license file in root directory : Licence_CeCILL_V2-en.txt
    or http://www.cecill.info/licences/Licence_CeCILL_V2-en.html
    Holder : CEA/LSCE (Laboratoire des Sciences du CLimat et de l'Environnement)
    CNRS/IPSL (Institut Pierre Simon Laplace)
    Project Manager : Yann Meurdesoif
    yann.meurdesoif@cea.fr
File size: 1.5 KB
Line 
1#ifndef __XIOS_CObject__
2#define __XIOS_CObject__
3
4/// XIOS headers ///
5#include "xios_spl.hpp"
6
7namespace xios
8{
9  /// ////////////////////// Déclarations ////////////////////// ///
10
11  class CObject
12  {
13    public:
14      /// Destructeur ///
15      virtual ~CObject(void);
16
17      /// Accesseurs ///
18      const StdString& getId(void) const;
19
20      virtual StdString dumpClassAttributes(void);
21
22      /// Mutateurs ///
23      void resetId(void);
24      void setId(const StdString& id, bool idAutoGenerated = false);
25
26      /// Tests ///
27      bool hasId(void) const;
28      bool hasAutoGeneratedId(void) const;
29
30      /// Opérateurs ///
31      // bool operator==(const CObject& other) const;
32      // bool operator!=(const CObject& other) const;
33
34      /// Flux ///
35      friend StdOStream& operator<<(StdOStream& os, const CObject& object);
36
37      /// Autres ///
38      virtual StdString toString(void) const = 0;
39      virtual void fromString(const StdString& str) = 0;
40
41    protected:
42      /// Constructeurs ///
43      CObject(void);
44      explicit CObject(const StdString& id, bool idAutoGenerated = false);
45      CObject(const CObject& object);
46      CObject(const CObject* const object); // Not implemented.
47
48    private:
49      /// Propriétés ///
50      StdString id;   // identifiant de l'Object
51      bool idDefined; // true si l'object est identifié, false sinon.
52      bool idAutoGenerated; //!< true if and only the id was automatically generated
53  }; // class CObject
54} // namespace xios
55
56#endif // __XIOS_CObject__
Note: See TracBrowser for help on using the repository browser.