00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011 #ifndef HxTraceObject_h
00012 #define HxTraceObject_h
00013
00014 #include "HxIo.h"
00015
00016 #include "HxString.h"
00017
00018 #define call(name) HxTraceObject(#name) _traceObject
00019
00020
00021 class HxTraceObject
00022 {
00023 public:
00024 HxTraceObject(HxString name);
00025 ~HxTraceObject();
00026 private:
00027 HxString _name;
00028 };
00029
00030 inline
00031 HxTraceObject::HxTraceObject(HxString name)
00032 : _name(name)
00033 {
00034 STD_COUT << _name << " called" << STD_ENDL;
00035 }
00036
00037 inline
00038 HxTraceObject::~HxTraceObject()
00039 {
00040 STD_COUT << _name << " returns" << STD_ENDL;
00041 }
00042
00043 #endif