//------------------------------------------------------------------- // __Pointer_MapX.h //------------------------------------------------------------------- #ifndef __POINTER_MAPX_H #define __POINTER_MAPX_H class __Pointer_MapX { public: __Pointer_MapX (); void Report_Error (char* msg, long l, char* f); void Add (void* a, long& t, long l, char* f); void Remove (void* a); bool Contains (void* a, long t); void Increment_Ref_Count (void* a); void Decrement_Ref_Count (void* a); long Ref_Count (void* a); void Report_Allocation (); private: const static int table_size = 1999; struct Node { void* address; long timestamp; long line_number; char* file_name; long ref_count; Node* next; }; long nextstamp; Node* map[table_size]; long table_entries; }; #endif // __POINTER_MAPX_H