trace.h revision d522f475
1/* $XTermId: trace.h,v 1.42 2007/12/31 20:58:23 tom Exp $ */ 2 3/************************************************************ 4 5Copyright 1997-2006,2007 by Thomas E. Dickey 6 7 All Rights Reserved 8 9Permission to use, copy, modify, and distribute this software and its 10documentation for any purpose and without fee is hereby granted, 11provided that the above copyright notice appear in all copies and that 12both that copyright notice and this permission notice appear in 13supporting documentation, and that the name of the above listed 14copyright holder(s) not be used in advertising or publicity pertaining 15to distribution of the software without specific, written prior 16permission. 17 18THE ABOVE LISTED COPYRIGHT HOLDER(S) DISCLAIM ALL WARRANTIES WITH REGARD 19TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY 20AND FITNESS, IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE 21LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 22WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 23ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 24OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 25 26********************************************************/ 27 28/* 29 * Common/useful definitions for XTERM application 30 */ 31#ifndef included_trace_h 32#define included_trace_h 33 34#include <xterm.h> 35 36#if OPT_TRACE 37 38extern void Trace ( const char *, ... ) 39#ifdef GCC_PRINTF 40 __attribute__ ((format(printf,1,2))) 41#endif 42 ; 43#define TRACE(p) Trace p 44 45#if OPT_TRACE > 1 46#define TRACE2(p) Trace p 47#endif 48 49extern const char * visibleChrsetName(int /* chrset */); 50extern char * visibleChars (PAIRED_CHARS(Char * /* buf */, Char * /* buf2 */), unsigned /* len */); 51extern char * visibleIChar (IChar *, unsigned); 52extern const char * visibleEventType (int); 53extern const char * visibleXError (int /* code */); 54 55extern void TraceArgv(const char * /* tag */, char ** /* argv */); 56#define TRACE_ARGV(tag,argv) TraceArgv(tag,argv) 57 58extern char *trace_who; 59#define TRACE_CHILD int tracing_child = (trace_who = "child") != 0; (void) tracing_child; 60 61extern void TraceSizeHints(XSizeHints *); 62#define TRACE_HINTS(hints) TraceSizeHints(hints) 63 64extern void TraceIds(const char *fname, int lnum); 65#define TRACE_IDS TraceIds(__FILE__, __LINE__) 66 67extern void TraceOptions(OptionHelp *options, XrmOptionDescRec *resources, Cardinal count); 68#define TRACE_OPTS(opts,ress,lens) TraceOptions(opts,ress,lens) 69 70extern void TraceTranslations(const char *, Widget); 71#define TRACE_TRANS(name,w) TraceTranslations(name,w) 72 73extern void TraceWMSizeHints(XtermWidget); 74#define TRACE_WM_HINTS(w) TraceWMSizeHints(w) 75 76extern void TraceXtermResources(void); 77#define TRACE_XRES() TraceXtermResources() 78 79#endif 80 81#endif /* included_trace_h */ 82