source: XIOS/dev/XIOS_GRIB/src/declare_virtual_node.hpp @ 2327

Last change on this file since 2327 was 619, checked in by mhnguyen, 9 years ago

Implementing the first prototype of filter

+) Create new class filter
+) Implement class for specific algorithm
+) Implement inversing algorithm

Test
+) On Curie
+) Grid with one axis: passed

File size: 1.8 KB
Line 
1#ifndef __XMLIO_DECLARE_VIRTUAL_NODE__
2#define __XMLIO_DECLARE_VIRTUAL_NODE__
3
4/// ///////////////////////////// Macros ///////////////////////////// ///
5
6#define DECLARE_VIRTUAL_NODE(type)                                    \
7   class CVirtual##type                                               \
8      : public CVirtualNode<C##type>                                     \
9   {                                                                  \
10      public:                                                         \
11         typedef C##type           RelType;                           \
12                                                                      \
13         CVirtual##type() : CVirtualNode<RelType> ()                  \
14         { /* Ne rien faire de plus */ }                              \
15                                                                      \
16         void setVirtual##type(RelType* newRelTypePtr)                \
17         { CVirtualNode<C##type>::setVirtualNode(newRelTypePtr); }                     \
18                                                                      \
19         void setVirtual##type()                                      \
20         { CVirtualNode<C##type>::setVirtualNode(); }                     \
21                                                                      \
22         RelType* getVirtual##type() const                            \
23         { return CVirtualNode<C##type>::getVirtualNode(); }                           \
24                                                                      \
25         virtual ~CVirtual##type()                                    \
26         { /* Ne rien faire de plus */ }                              \
27   };                                                                 \
28   typedef CVirtual##type CVirtual##type##Definition
29
30
31#endif // __XMLIO_DECLARE_VIRTUAL_NODE__
Note: See TracBrowser for help on using the repository browser.