:- protocol(monitorp). :- info([ version is 1.0, author is 'Paulo Moura', date is 2000/7/24, comment is 'Monitor protocol.']). :- public(monitor_activated/0). :- mode(monitor_activated, zero_or_one). :- info(monitor_activated/0, [ comment is 'True if monitor is currently active.']). :- public(activate_monitor/0). :- mode(activate_monitor, one). :- info(activate_monitor/0, [ comment is 'Activates all spy points and start monitoring.']). :- public(suspend_monitor/0). :- mode(suspend_monitor, one). :- info(suspend_monitor/0, [ comment is 'Suspends monitoring, deactivating all spy points.']). :- public(reset_monitor/0). :- mode(reset_monitor, one). :- info(reset_monitor/0, [ comment is 'Resets monitor, deactivating and deleting all spy points.']). :- public(spy_point/4). :- mode(spy_point(?event, ?object, ?callable, ?object), zero_or_more). :- info(spy_point/4, [ comment is 'Current spy point.', argnames is ['Event', 'Object', 'Message', 'Sender']]). :- public(set_spy_point/4). :- mode(set_spy_point(?event, ?object, ?callable, ?object), one). :- info(set_spy_point/4, [ comment is 'Sets a spy point.', argnames is ['Event', 'Object', 'Message', 'Sender']]). :- public(del_spy_points/4). :- mode(del_spy_points(@event, @object, @callable, @object), one). :- info(del_spy_points/4, [ comment is 'Deletes all matching spy points.', argnames is ['Event', 'Object', 'Message', 'Sender']]). :- end_protocol.