Changeset 775 for XIOS/trunk/src/declare_attribute.hpp
- Timestamp:
- 11/02/15 11:46:25 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
XIOS/trunk/src/declare_attribute.hpp
r591 r775 3 3 4 4 /// ///////////////////////////// Macros ///////////////////////////// /// 5 6 5 #define DECLARE_ATTRIBUTE(type, name) \ 7 6 class name##_attr : public CAttributeTemplate<type> \ … … 18 17 } name; 19 18 19 #define DECLARE_ATTRIBUTE_PRIVATE(type, name) \ 20 class name##_attr : public CAttributeTemplate<type> \ 21 { \ 22 public : \ 23 name##_attr(void) \ 24 : CAttributeTemplate<type> \ 25 (#name, *CAttributeMap::Current) \ 26 { /* Ne rien faire de plus */ } \ 27 type operator=(const type & value) \ 28 { return (CAttributeTemplate<type>::operator=(value)); } \ 29 virtual bool isAttributePublic() \ 30 { return false; } \ 31 virtual ~name##_attr(void) \ 32 { /* Ne rien faire de plus */ } \ 33 } name; 34 20 35 #define DECLARE_ARRAY(T_num, T_rank, name) \ 21 36 class name##_attr : public CAttributeArray<T_num, T_rank> \ … … 26 41 virtual ~name##_attr(void) {} \ 27 42 } name; 28 43 44 #define DECLARE_ARRAY_PRIVATE(T_num, T_rank, name) \ 45 class name##_attr : public CAttributeArray<T_num, T_rank> \ 46 { \ 47 public : \ 48 using CAttributeArray<T_num, T_rank>::operator = ; \ 49 name##_attr(void) : CAttributeArray<T_num, T_rank> (#name, *CAttributeMap::Current) {} \ 50 virtual bool isAttributePublic() \ 51 { return false; } \ 52 virtual ~name##_attr(void) {} \ 53 } name; 54 29 55 #define DECLARE_CLASS_ENUM(name) \ 30 56 class name##_attr : public CAttributeEnum<Enum_##name> \ … … 34 60 virtual ~name##_attr(void) {} \ 35 61 } name; 36 62 37 63 #define DECLARE_ENUM2(name,arg1,arg2) \ 38 64 class Enum_##name \ … … 44 70 } ; \ 45 71 DECLARE_CLASS_ENUM(name) 46 72 47 73 #define DECLARE_ENUM3(name,arg1,arg2,arg3) \ 48 74 class Enum_##name \ … … 113 139 int getSize(void) const { return 9 ; } \ 114 140 } ; \ 115 DECLARE_CLASS_ENUM(name) 141 DECLARE_CLASS_ENUM(name) 116 142 117 143 #define DECLARE_TYPE(name) \
Note: See TracChangeset
for help on using the changeset viewer.