summaryrefslogtreecommitdiff
path: root/Source/modules/asura-base/Classes.h
blob: 515762baf7bec0cd2add89f2c648a5546a98d20b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#ifndef _ASURAENGINE_CLASSES_H_
#define _ASURAENGINE_CLASSES_H_

#define GET_SET(TYPE,PROP_NAME,VAR_NAME)	\
inline void Set##PROP_NAME (TYPE val) { VAR_NAME = val; }	\
inline TYPE Get##PROP_NAME () {return VAR_NAME; }

#define PROPERTY(TYPE,PROP_NAME,VAR_NAME)	\
private: \
	TYPE VAR_NAME; \
public: \
	inline void Set##PROP_NAME (TYPE val) { VAR_NAME = val; }	\
  inline TYPE Get##PROP_NAME () {return VAR_NAME; }

#define namespace_begin(NAMESPACE) namespace NAMESPACE { 
#define namespace_end }

#endif