MasterScan
Lab_Matlab_control Master Branch
|
Graphs references among objects with the Graphviz tool.
@ details ObjectGrapher follows refrences among objects and keeps track of unique objects and how they refer to one another. It confugures a DataGrapher to graph which objects refer to which.
Properties and Events | |
Property | seedObjects |
containers.Map of objects, where to start looking for object references | |
Property | uniqueObjects |
containers.Map of unique objects found while following references | |
Property | maxElementDepth = 20 |
maximum number of references to follow from before stopping (to avoid recursion among non-handle objects) | |
Property | ignoredClasses = {} |
cell array of strings of class names of objects to ignore | |
Property | dataGrapher |
a DataGrapher object for graphing the objects | |
Property | objectInfo |
struct of object and reference data to graph | |
Property | currentIndex |
index into uniqueObjects of the last object found | |
Methods | |
self | ObjectGrapher () |
Constructor takes no arguments. | |
initializeUniques (self) | |
Clear the list of unique objects. | |
addSeedObject (self, object) | |
Use the given object to start looking for object references. | |
n | addUniqueObject (self, object) |
Append a new object to the list of unique objects. | |
contains index | containsUniqueObject (self, object) |
Determine whether the given object has already been encountered. | |
crawlForUniqueObjects (self) | |
Look for unique objects, starting with seedObjects. | |
scanObject (self, object, depth, refPath, objFcn) | |
Determine whether the given object is unique. | |
traceLinksForEdges (self) | |
Locate graph edges based on object references. | |
recordEdge (self, object, depth, refPath, objFcn) | |
Store a graph edge between two objects. | |
iterateElements (self, object, depth, refPath, objFcn) | |
Folow references from one object to other objects. | |
structObj | objectToStruct (object) |
Put the public properties of the given object into a struct. | |