source: XMLIO_V2/dev/common/src/xmlio/node/method.hpp @ 219

Last change on this file since 219 was 219, checked in by hozdoba, 10 years ago

Préparation nouvelle arborescence

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