#ifndef AccessMembers_First #define AccessMembers_First #ifdef __GNUG__ #pragma interface #endif #include "Types.h" #include "ET_varargs.h" class Class; class Object; //---- AccessMembers ----------------------------------------------------------- // access the instance variables of an Object class AccessMembers { protected: AccessMembers(); virtual ~AccessMembers(); //--- overridden to get access to instance variables public: virtual void Member(char *name, int offset, int lenOrOffset, int type, Class *cla, bool global, bool lenglobal); virtual void ClassName(char *name); void ScanMembers(Object*, int first, va_list, int); }; //---- AccessObjPtrs ----------------------------------------------------------- // access Object* of an Object class AccessObjPtrs: public AccessMembers { protected: Object *inObject; virtual void FoundPointer(Object *op, char*, int, bool global); public: AccessObjPtrs(Object *op= 0); void ForObject(Object *op); void Member(char *name, int offset, int offsetOrLen, int type, Class *cl, bool global, bool lenglobal); }; #endif