Inheritance diagram for DAQTrackMap::

Public Methods | |
| DAQTrackMap () | |
| Constructor. More... | |
| ~DAQTrackMap () | |
| Destructor. More... | |
| ostream & | Print (ostream &) |
| Print this object. More... | |
| bool | IsInitialized () |
| int | Lock () |
| Lock mutex. More... | |
| int | TryLock () |
| Try to lock mutex. More... | |
| int | UnLock () |
| Try to unlock mutex. More... | |
| bool | TestMemory () |
| Test memory map for errors. More... | |
| void | PrintMemoryErrors (ostream &) |
| Print memory errors. More... | |
| void | LogMemoryErrors () |
| Log memory errors. More... | |
Protected Types | |
| typedef DAQTrackMap::const_iterator | DAQTrackMapCI |
Protected Methods | |
| void | EyeCatcher (ostream &, void *, int) |
| void | PrintEntry (ostream &, DAQTrackMapCI &) |
| Print a map entry. More... | |
| void | LogEntry (DAQTrackMapCI &) |
| Log a map entry. More... | |
The DAQTrackMap class provides methods for tracking objects and memory usage in a SpectroDAQ client or server.
This also implements a simple recursive mutex for locking the map such that a deadlock doesn't occur when a locking thread issues a new() resulting in an additional attempt to lock the map.
|
|
Basic constructor method for this class.
|
|
|
Destructor method for this class.
|
|
|
Attempts to lock the mutex. This method will block if the mutex has been locked by another thread and that thread does not currently own the mutex.
|
|
|
Log a map entry.
|
|
|
Log the map entries that have memory errors.
|
|
|
Print this object to a stream.
|
|
|||||||||||||||
|
Print a map entry to an ostream.
|
|
|
Print the map entries that have memory errors to an ostream.
|
|
|
Test the memory map for errors. If errors are found, return true.
|
|
|
Attempts to lock the mutex. This method doesn't block if the mutex has been locked by another thread.
|
|
|
Attempts to unlock the mutex. Only the owning thread can unlock the mutex.
|
1.2.9.1 written by Dimitri van Heesch,
© 1997-2001