00001 /* File: trace_xsb.h 00002 ** Contact: xsb-contact@cs.sunysb.edu 00003 ** 00004 ** Copyright (C) The Research Foundation of SUNY, 1986, 1993-1999 00005 ** 00006 ** XSB is free software; you can redistribute it and/or modify it under the 00007 ** terms of the GNU Library General Public License as published by the Free 00008 ** Software Foundation; either version 2 of the License, or (at your option) 00009 ** any later version. 00010 ** 00011 ** XSB is distributed in the hope that it will be useful, but WITHOUT ANY 00012 ** WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS 00013 ** FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for 00014 ** more details. 00015 ** 00016 ** You should have received a copy of the GNU Library General Public License 00017 ** along with XSB; if not, write to the Free Software Foundation, 00018 ** Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 00019 ** 00020 ** 00021 */ 00022 00023 #ifndef __TRACE_XSB_H__ 00024 #define __TRACE_XSB_H__ 00025 00026 #include "basicdefs.h" 00027 #include "basictypes.h" 00028 00029 struct trace_str { /* for tracing purpose below */ 00030 unsigned long maxlstack_count, maxgstack_count, maxtrail_count, maxcpstack_count; 00031 unsigned long maxopenstack_count, maxlevel_num; 00032 double time_count; 00033 }; 00034 00035 extern struct trace_str tds; 00036 00037 extern void total_stat(CTXTdeclc double); 00038 extern void perproc_reset_stat(void), reset_stat_total(void); 00039 00040 extern void perproc_stat(void); 00041 00042 #endif /* __TRACE_XSB_H__ */