New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
var.hpp in vendors/XIOS/current/src/node – NEMO

source: vendors/XIOS/current/src/node/var.hpp @ 3428

Last change on this file since 3428 was 3428, checked in by rblod, 12 years ago

importing initial XIOS vendor drop

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