1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
4 <TITLE>terminal_interface-curses-trace.ads</TITLE>
5 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
6 <style type="text/css">
16 <HR><DIV style="text-align:center"><H1> File : terminal_interface-curses-trace.ads </H1></DIV><HR>
18 <span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
19 <span class="comment"><EM>-- --</EM></span>
20 <span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
21 <span class="comment"><EM>-- --</EM></span>
22 <span class="comment"><EM>-- Terminal_Interface.Curses.Trace --</EM></span>
23 <span class="comment"><EM>-- --</EM></span>
24 <span class="comment"><EM>-- S P E C --</EM></span>
25 <span class="comment"><EM>-- --</EM></span>
26 <span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
27 <span class="comment"><EM>-- Copyright (c) 2000,2014 Free Software Foundation, Inc. --</EM></span>
28 <span class="comment"><EM>-- --</EM></span>
29 <span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
30 <span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
31 <span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
32 <span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
33 <span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
34 <span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
35 <span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
36 <span class="comment"><EM>-- --</EM></span>
37 <span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
38 <span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
39 <span class="comment"><EM>-- --</EM></span>
40 <span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
41 <span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
42 <span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
43 <span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
44 <span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
45 <span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
46 <span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
47 <span class="comment"><EM>-- --</EM></span>
48 <span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
49 <span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
50 <span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
51 <span class="comment"><EM>-- authorization. --</EM></span>
52 <span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
53 <span class="comment"><EM>-- Author: Eugene V. Melaragno <aldomel@ix.netcom.com> 2000</EM></span>
54 <span class="comment"><EM>-- Version Control:</EM></span>
55 <span class="comment"><EM>-- @Revision: 1.4 @</EM></span>
56 <span class="comment"><EM>-- Binding Version 01.00</EM></span>
57 <span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
59 <b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<span class="symbol"><A NAME="ref_42_35" HREF="terminal_interface-curses-trace__adb.htm#ref_43_40">Trace</A></span> <b>is</b>
60 <b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-trace__ads.htm#ref_42_35">Trace</A>);
62 <b>type</b> <span class="symbol"><A NAME="ref_45_9">Trace_Attribute_Set</A></span> <b>is</b>
64 <span class="symbol"><A NAME="ref_47_10">Times</A></span> : Boolean;
65 <span class="symbol"><A NAME="ref_48_10">Tputs</A></span> : Boolean;
66 <span class="symbol"><A NAME="ref_49_10">Update</A></span> : Boolean;
67 <span class="symbol"><A NAME="ref_50_10">Cursor_Move</A></span> : Boolean;
68 <span class="symbol"><A NAME="ref_51_10">Character_Output</A></span> : Boolean;
69 <span class="symbol"><A NAME="ref_52_10">Calls</A></span> : Boolean;
70 <span class="symbol"><A NAME="ref_53_10">Virtual_Puts</A></span> : Boolean;
71 <span class="symbol"><A NAME="ref_54_10">Input_Events</A></span> : Boolean;
72 <span class="symbol"><A NAME="ref_55_10">TTY_State</A></span> : Boolean;
73 <span class="symbol"><A NAME="ref_56_10">Internal_Calls</A></span> : Boolean;
74 <span class="symbol"><A NAME="ref_57_10">Character_Calls</A></span> : Boolean;
75 <span class="symbol"><A NAME="ref_58_10">Termcap_TermInfo</A></span> : Boolean;
76 <span class="symbol"><A NAME="ref_59_10">Attribute_Color</A></span> : Boolean;
77 <b>end</b> <b>record</b>;
78 <b>pragma</b> Convention (C_Pass_By_Copy, <A HREF="terminal_interface-curses-trace__ads.htm#ref_45_9">Trace_Attribute_Set</A>);
80 <b>for</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_45_9">Trace_Attribute_Set</A> <b>use</b>
82 <A HREF="terminal_interface-curses-trace__ads.htm#ref_47_10">Times</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_356_4">TRACE_TIMES_First</A>
83 .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_357_4">TRACE_TIMES_Last</A>;
84 <A HREF="terminal_interface-curses-trace__ads.htm#ref_48_10">Tputs</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_358_4">TRACE_TPUTS_First</A>
85 .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_359_4">TRACE_TPUTS_Last</A>;
86 <A HREF="terminal_interface-curses-trace__ads.htm#ref_49_10">Update</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_360_4">TRACE_UPDATE_First</A>
87 .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_361_4">TRACE_UPDATE_Last</A>;
88 <A HREF="terminal_interface-curses-trace__ads.htm#ref_50_10">Cursor_Move</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_362_4">TRACE_MOVE_First</A>
89 .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_363_4">TRACE_MOVE_Last</A>;
90 <A HREF="terminal_interface-curses-trace__ads.htm#ref_51_10">Character_Output</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_364_4">TRACE_CHARPUT_First</A>
91 .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_365_4">TRACE_CHARPUT_Last</A>;
92 <A HREF="terminal_interface-curses-trace__ads.htm#ref_52_10">Calls</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_366_4">TRACE_CALLS_First</A>
93 .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_367_4">TRACE_CALLS_Last</A>;
94 <A HREF="terminal_interface-curses-trace__ads.htm#ref_53_10">Virtual_Puts</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_368_4">TRACE_VIRTPUT_First</A>
95 .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_369_4">TRACE_VIRTPUT_Last</A>;
96 <A HREF="terminal_interface-curses-trace__ads.htm#ref_54_10">Input_Events</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_370_4">TRACE_IEVENT_First</A>
97 .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_371_4">TRACE_IEVENT_Last</A>;
98 <A HREF="terminal_interface-curses-trace__ads.htm#ref_55_10">TTY_State</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_372_4">TRACE_BITS_First</A>
99 .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_373_4">TRACE_BITS_Last</A>;
100 <A HREF="terminal_interface-curses-trace__ads.htm#ref_56_10">Internal_Calls</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_374_4">TRACE_ICALLS_First</A>
101 .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_375_4">TRACE_ICALLS_Last</A>;
102 <A HREF="terminal_interface-curses-trace__ads.htm#ref_57_10">Character_Calls</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_376_4">TRACE_CCALLS_First</A>
103 .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_377_4">TRACE_CCALLS_Last</A>;
104 <A HREF="terminal_interface-curses-trace__ads.htm#ref_58_10">Termcap_TermInfo</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_378_4">TRACE_DATABASE_First</A>
105 .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_379_4">TRACE_DATABASE_Last</A>;
106 <A HREF="terminal_interface-curses-trace__ads.htm#ref_59_10">Attribute_Color</A> <b>at</b> 0 <b>range</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_380_4">TRACE_ATTRS_First</A>
107 .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_381_4">TRACE_ATTRS_Last</A>;
108 <b>end</b> <b>record</b>;
109 <b>pragma</b> Warnings (Off);
110 <b>for</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_45_9">Trace_Attribute_Set</A>'Size <b>use</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_382_4">Trace_Size</A>;
111 <b>pragma</b> Warnings (On);
113 <span class="symbol"><A NAME="ref_96_4">Trace_Disable</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_45_9">Trace_Attribute_Set</A> := (<b>others</b> => False);
115 <span class="symbol"><A NAME="ref_98_4">Trace_Ordinary</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_45_9">Trace_Attribute_Set</A> :=
116 (<A HREF="terminal_interface-curses-trace__ads.htm#ref_47_10">Times</A> => True,
117 <A HREF="terminal_interface-curses-trace__ads.htm#ref_48_10">Tputs</A> => True,
118 <A HREF="terminal_interface-curses-trace__ads.htm#ref_49_10">Update</A> => True,
119 <A HREF="terminal_interface-curses-trace__ads.htm#ref_50_10">Cursor_Move</A> => True,
120 <A HREF="terminal_interface-curses-trace__ads.htm#ref_51_10">Character_Output</A> => True,
121 <b>others</b> => False);
122 <span class="symbol"><A NAME="ref_105_4">Trace_Maximum</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-trace__ads.htm#ref_45_9">Trace_Attribute_Set</A> := (<b>others</b> => True);
124 <span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
126 <span class="comment"><EM>-- |=====================================================================</EM></span>
127 <span class="comment"><EM>-- | Man page <A HREF="../man/curs_trace.3x.html">curs_trace.3x</A></EM></span>
128 <span class="comment"><EM>-- |=====================================================================</EM></span>
130 <span class="comment"><EM>-- #1A NAME="AFU_1"#2|</EM></span>
131 <b>procedure</b> <span class="symbol"><A NAME="ref_114_14" HREF="terminal_interface-curses-trace__adb.htm#ref_45_14">Trace_On</A></span> (<span class="symbol"><A NAME="ref_114_24" HREF="terminal_interface-curses-trace__adb.htm#ref_45_24">x</A></span> : <A HREF="terminal_interface-curses-trace__ads.htm#ref_45_9">Trace_Attribute_Set</A>);
132 <span class="comment"><EM>-- The debugging library has trace.</EM></span>
134 <span class="comment"><EM>-- #1A NAME="AFU_2"#2|</EM></span>
135 <b>procedure</b> <span class="symbol"><A NAME="ref_118_14" HREF="terminal_interface-curses-trace__adb.htm#ref_52_14">Trace_Put</A></span> (<span class="symbol"><A NAME="ref_118_25" HREF="terminal_interface-curses-trace__adb.htm#ref_52_25">str</A></span> : String);
136 <span class="comment"><EM>-- AKA: <A HREF="../man/curs_trace.3x.html">_tracef()</A></EM></span>
138 <span class="symbol"><A NAME="ref_121_4">Current_Trace_Setting</A></span> : <A HREF="terminal_interface-curses-trace__ads.htm#ref_45_9">Trace_Attribute_Set</A>;
139 <b>pragma</b> Import (C, <A HREF="terminal_interface-curses-trace__ads.htm#ref_121_4">Current_Trace_Setting</A>, "_nc_tracing");
141 <b>end</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>.<A HREF="terminal_interface-curses-trace__ads.htm#ref_42_35">Trace</A>;