Editor's Note: This file was selected as MATLAB Central Pick of the Week
tracer4m traces calls to methods and functions.
Object-oriented design is about distributing responsibilities among interacting objects.
The objects should be small and focused. This results in a complex flow of calls.
Furthermore, in a GUI the user manipulates controls, which in turns trigger events and
chains of calls to methods and functions. There is a need to trace the calls.
The goal of tracer4m is to support unit testing, debugging, and analysis of existing code.
Example based on "Example - Using Events to Update Graphs" from the Matlab on-line help
feobject = fcneval( @(x,y) x.*exp(-x.^2-y.^2), [-2 2 ] );
fcnview.createViews( feobject );
log = TraceHistory.Instance;
log.setup( { 'fcneval', 'fcnview', 'createViews' } )
feobject.FofXY = @(x,y) x.*exp(-x.^.5-y.^.5);
disp( log )
%
log.clearHistory
feobject.Lm = [-8 3];
disp( log )
Part of the result is depicted in the image above.
Documentation: tracer4m_demo.html, which is generated by PUBLISH, discusses and demonstrate the use and behaviour of tracer4m.
I would appreciate comments especially regarding requirements on tracing tools for Matlab
Cite As
per isakson (2024). tracer4m (https://www.mathworks.com/matlabcentral/fileexchange/28929-tracer4m), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
Tags
Acknowledgements
Inspired: Inject error in function
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
tracer4m/
tracer4m/html/
Version | Published | Release Notes | |
---|---|---|---|
1.1.0.0 | Previous upload failed. Better luck this time :-)
Removed the limitation regarding function name reported by Jesse Hopkins. Now it also takes file names with wildcards. |
||
1.0.0.0 |