source: XIOS/trunk/src/node/method.hpp @ 591

Last change on this file since 591 was 591, checked in by rlacroix, 9 years ago

Remove leftovers from the XMLIO age.

  • 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: 2.8 KB
Line 
1#ifndef __XIOS_CMethod__
2#define __XIOS_CMethod__
3
4namespace xios
5{
6      /// ////////////////////// Déclarations ////////////////////// ///
7
8      class CMethodGroup;
9      class CMethodAttributes;
10      class CBaseMethod;
11      class CMethod;
12
13      ///--------------------------------------------------------------
14
15      // Declare/Define CMethodAttribute
16      BEGIN_DECLARE_ATTRIBUTE_MAP(CMethod)
17#include "method_attribute.conf"
18      END_DECLARE_ATTRIBUTE_MAP(CMethod)
19
20      ///--------------------------------------------------------------
21
22      class CBaseMethod
23      { // Declare CMethod functionalities
24         public :
25
26            /// Constructeur et Destructeur ///
27            CBaseMethod(void);
28            ~CBaseMethod(void);
29
30      }; // class CBaseMethod
31
32      ///--------------------------------------------------------------
33
34      class CMethod
35         : public CObjectTemplate<CMethod>
36         , public CMethodAttributes
37         , public CBaseMethod
38      {
39            /// typedef ///
40            typedef CObjectTemplate<CMethod>   SuperClass;
41            typedef CMethodAttributes SuperClassAttribute;
42            typedef CBaseMethod       SuperClassBase;
43
44         public :
45
46            typedef CMethodAttributes RelAttributes;
47            typedef CMethodGroup      RelGroup;
48
49            /// Constructeurs ///
50            CMethod(void);
51            explicit CMethod(const StdString & id);
52            CMethod(const CMethod & method);       // Not implemented yet.
53            CMethod(const CMethod * const method); // Not implemented yet.
54
55            /// Destructeur ///
56            virtual ~CMethod(void);
57
58            /// Accesseurs statiques ///
59            static inline StdString GetName(void);
60            static inline StdString GetDefName(void);
61
62      }; // class CMethod
63
64      ///--------------------------------------------------------------
65
66      // Declare/Define CMethodGroup and CMethodDefinition
67      DECLARE_GROUP(CMethod);
68
69      /// ////////////////////// Définitions ////////////////////// ///
70
71      CBaseMethod::CBaseMethod(void)
72      { /* Ne rien faire de plus */ }
73
74      CBaseMethod::~CBaseMethod(void)
75      { /* Ne rien faire de plus */ }
76
77      ///--------------------------------------------------------------
78
79      CMethod::CMethod(void)
80         : CObjectTemplate<CMethod>()
81         , CMethodAttributes()
82         , CBaseMethod()
83      { /* Ne rien faire de plus */ }
84
85      CMethod::CMethod(const StdString & id)
86         : CObjectTemplate<CMethod>(id)
87         , CMethodAttributes()
88         , CBaseMethod()
89      { /* Ne rien faire de plus */ }
90
91      CMethod::~CMethod(void)
92      { /* Ne rien faire de plus */ }
93
94      StdString CMethod::GetName(void)   { return (StdString("method")); }
95      StdString CMethod::GetDefName(void){ return (CMethod::GetName()); }
96
97} // namespace xios
98
99#endif // __XIOS_CMethod__
Note: See TracBrowser for help on using the repository browser.