Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members  

AllocObjectTrace Class Reference

Crossroad of traces and objects-methods. More...

#include <allocObjectTrace.h>

Inheritance diagram for AllocObjectTrace::

LI1 LI2 LI3 AllocAbstractStatThreadObject IdObject ListItem ListItem ListItem AllocStatData RefCount RefCount RefCount DataBinaryFormat StatDataModification List of all members.

Public Methods

 AllocObjectTrace ()
 Default constructor.

virtual ~AllocObjectTrace ()
 Destructor.

virtual void addMemoryStat (jint size)
 Addition of the object's size to statistics. More...

virtual void subMemoryStat (jint size)
 Subtraction of the object's size from statistics. More...

virtual void clearFlag ()
 Clearing of flag. More...

const AllocObjectTraceKeygetKey (AllocObjectTraceKey &key)
 Retrieves object's key. More...

int operator== (const AllocObjectTraceKey &key)
 Compares object with given key. More...

void deactivate ()
 Performs deactivation.

void * operator new (size_t sz)
 Overloaded new() operator.

void operator delete (void *unit)
 Overloaded delete() operator.

virtual eClassIdent getClassIdent ()
 Class identification. More...

virtual int isActive ()
 State of object. More...

virtual int isChanged ()
 Indication that object has changed its data. More...

virtual void setUnchanged ()
 Set the structure is unchanged although it may not be.


Static Public Methods

int hashKey (const AllocObjectTraceKey &key)
 Hash function. More...


Public Attributes

AllocObjectMethodobjectMethod
 parent AllocObjectMethod.

AllocTracetrace
 parent AllocTrace.

List< AllocThreadObjectTrace,
LI2
threadObjectTraces
 associated AllocThreadObjectTraces.


Static Private Attributes

Allocator _allocator
 allocator.


Detailed Description

Crossroad of traces and objects-methods.

This class defines a relation between traces (specify where an object was allocated) and objects-methods (another relation described in AllocObjectMethod class description). It would be nice to have information where an object of given type was allocated - in which method (and to have a stack of called methods for each object where the last one in this stack made an allocation of the object).

Remember: a method allocates an object; this method can be called from various methods; these call sequences of methods divide objects of the same type to groups, two objects of the same type are equivalent if they're in the same group, so they're allocated using the same call sequence. Trace is one of these call sequences. In this way we gained the highest granularity of data.

See also:
AllocObjectMethod, AllocTrace, AllocThreadObjectTrace
Author:
Marek Przeczek, Petr Luner

Definition at line 66 of file allocObjectTrace.h.


Member Function Documentation

void AllocObjectTrace::addMemoryStat jint    size [virtual]
 

Addition of the object's size to statistics.

This method adds size of object to the statistic data. It changes number of live/total instances, too.

Parameters:
size  size of object (in number of bytes)
See also:
subMemoryStat()

Reimplemented from AllocAbstractStatThreadObject.

Definition at line 45 of file allocObjectTrace.cpp.

Referenced by AllocThreadObjectTrace::addMemoryStat().

void AllocObjectTrace::clearFlag   [virtual]
 

Clearing of flag.

This method sets the modification flag to zero.

Reimplemented from AllocAbstractStatThreadObject.

Definition at line 67 of file allocObjectTrace.cpp.

Referenced by AllocThreadObjectTrace::clearFlag().

virtual eClassIdent AllocObjectTrace::getClassIdent   [inline, virtual]
 

Class identification.

Returns:
unique class type identifier

Reimplemented from IdObject.

Definition at line 176 of file allocObjectTrace.h.

const AllocObjectTraceKey & AllocObjectTrace::getKey AllocObjectTraceKey   key
 

Retrieves object's key.

Parameters:
key  where to store the key
Returns:
key
See also:
Hash

Definition at line 79 of file allocObjectTrace.cpp.

Referenced by AllocThreadObjectTrace::getKey().

int AllocObjectTrace::hashKey const AllocObjectTraceKey   key [static]
 

Hash function.

Parameters:
key  reference to a key
Returns:
hash value

Definition at line 91 of file allocObjectTrace.cpp.

int AllocObjectTrace::isActive   [virtual]
 

State of object.

Once an object is unactive, it remains unactive forever.

Returns:
0 (not active); 1 (active)

Reimplemented from IdObject.

Definition at line 96 of file allocObjectTrace.cpp.

Referenced by AllocThreadObjectTrace::isActive().

virtual int AllocObjectTrace::isChanged   [inline, virtual]
 

Indication that object has changed its data.

Returns:
0 (no change); 1 (data changed)

Reimplemented from IdObject.

Definition at line 191 of file allocObjectTrace.h.

int AllocObjectTrace::operator== const AllocObjectTraceKey   key
 

Compares object with given key.

Parameters:
key  key
Returns:
1 (true); 0 (false)
See also:
Hash

Definition at line 86 of file allocObjectTrace.cpp.

void AllocObjectTrace::subMemoryStat jint    size [virtual]
 

Subtraction of the object's size from statistics.

This method subtracts size of object from the statistic data. It changes number of live instances, too.

Parameters:
size  size of object (in number of bytes)
See also:
addMemoryStat()

Reimplemented from AllocAbstractStatThreadObject.

Definition at line 56 of file allocObjectTrace.cpp.

Referenced by AllocThreadObjectTrace::subMemoryStat().


The documentation for this class was generated from the following files:
Generated on Mon Jan 28 14:53:28 2002 for Java Profiler Dynamic Library by doxygen1.2.11.1 written by Dimitri van Heesch, © 1997-2001