15 #ifndef MEMORYUSAGEPOINTERS_H 16 #define MEMORYUSAGEPOINTERS_H 18 #include "pandabase.h" 20 #ifdef DO_MEMORY_USAGE 22 #include "typedObject.h" 23 #include "pointerTo.h" 24 #include "referenceCount.h" 29 #undef _POSIX_C_SOURCE 55 class EXPCL_PANDAEXPRESS MemoryUsagePointers {
57 MemoryUsagePointers();
58 ~MemoryUsagePointers();
60 int get_num_pointers()
const;
62 MAKE_SEQ(get_pointers, get_num_pointers, get_pointer);
64 MAKE_SEQ(get_typed_pointers, get_num_pointers, get_typed_pointer);
67 string get_type_name(
int n)
const;
68 double get_age(
int n)
const;
70 EXTENSION(PyObject *get_python_pointer(
int n)
const);
74 void output(ostream &out)
const;
84 INLINE Entry(
const Entry ©);
85 INLINE
void operator = (
const Entry ©);
101 friend class MemoryUsage;
104 INLINE ostream &operator << (ostream &out,
const MemoryUsagePointers &mup) {
109 #include "memoryUsagePointers.I" 111 #endif // MEMORY_USAGE_POINTERS This is an abstract class that all classes which use TypeHandle, and also provide virtual functions t...
A base class for all things that want to be reference-counted.
TypeHandle is the identifier used to differentiate C++ class types.