Nymph  v1.5.2
Flow-Based Data Processing Framework
KTMemberVariable.hh
Go to the documentation of this file.
1 /*
2  * KTMemberVariable.hh
3  *
4  * Created on: Aug 5, 2014
5  * Author: nsoblath
6  */
7 
8 #ifndef KTMEMBERVARIABLE_HH_
9 #define KTMEMBERVARIABLE_HH_
10 
11 
34 #define MEMBERVARIABLE_NOSET(TYPE, NAME) \
35  private: \
36  TYPE f##NAME; \
37  public: \
38  inline TYPE Get##NAME() const {return f##NAME;} \
39 
40 #define MEMBERVARIABLE(TYPE, NAME) \
41  MEMBERVARIABLE_NOSET(TYPE, NAME) \
42  inline void Set##NAME(TYPE var) {f##NAME = var; return;}
43 
44 #define MEMBERVARIABLE_PROTECTED_NOSET(TYPE, NAME) \
45  protected: \
46  TYPE f##NAME; \
47  public: \
48  inline TYPE Get##NAME() const {return f##NAME;} \
49 
50 #define MEMBERVARIABLE_PROTECTED(TYPE, NAME) \
51  MEMBERVARIABLE_PROTECTED_NOSET(TYPE, NAME) \
52  inline void Set##NAME(TYPE var) {f##NAME = var; return;}
53 
54 
55 
78 #define MEMBERVARIABLEREF_NOSET(TYPE, NAME) \
79  private: \
80  TYPE f##NAME; \
81  public: \
82  inline const TYPE& Get##NAME() const {return f##NAME;} \
83  inline TYPE& Get##NAME() {return f##NAME;}
84 
85 #define MEMBERVARIABLEREF(TYPE, NAME) \
86  MEMBERVARIABLEREF_NOSET(TYPE, NAME) \
87  inline void Set##NAME(const TYPE& var) {f##NAME = var; return;}
88 
89 #define MEMBERVARIABLEREF_PROTECTED_NOSET(TYPE, NAME) \
90  protected: \
91  TYPE f##NAME; \
92  public: \
93  inline const TYPE& Get##NAME() const {return f##NAME;} \
94  inline TYPE& Get##NAME() {return f##NAME;}
95 
96 #define MEMBERVARIABLEREF_PROTECTED(TYPE, NAME) \
97  MEMBERVARIABLEREF_PROTECTED_NOSET(TYPE, NAME) \
98  inline void Set##NAME(const TYPE& var) {f##NAME = var; return;}
99 
100 
101 #endif /* KTMEMBERVARIABLE_HH_ */