exclude.h

Go to the documentation of this file.
00001 #ifndef __EXCLUDE_H__
00002 #define __EXCLUDE_H__
00003 
00004 /*
00005  Copyright (c) 2006-2010 Trevor Williams
00006 
00007  This program is free software; you can redistribute it and/or modify
00008  it under the terms of the GNU General Public License as published by the Free Software
00009  Foundation; either version 2 of the License, or (at your option) any later version.
00010 
00011  This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
00012  without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
00013  See the GNU General Public License for more details.
00014 
00015  You should have received a copy of the GNU General Public License along with this program;
00016  if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
00017 */
00018 
00026 #include "defines.h"
00027 
00028 
00030 bool exclude_is_line_excluded(
00031   func_unit* funit,
00032   int        line
00033 );
00034 
00037 void exclude_set_line_exclude(
00038             func_unit* funit,
00039             int        line,
00040             int        value,
00041             char*      reason,
00042   /*@out@*/ statistic* stat
00043 );
00044 
00046 bool exclude_is_toggle_excluded(
00047   func_unit* funit,
00048   char*      sig_name
00049 );
00050 
00053 void exclude_set_toggle_exclude(
00054             func_unit*  funit,
00055             const char* sig_name,
00056             int         value,
00057             char        type,
00058             char*       reason,
00059   /*@out@*/ statistic*  stat
00060 );
00061 
00063 bool exclude_is_comb_excluded(
00064   func_unit* funit,
00065   int        expr_id,
00066   int        uline_id
00067 );
00068 
00071 void exclude_set_comb_exclude(
00072             func_unit* funit,
00073             int        expr_id,
00074             int        uline_id,
00075             int        value,
00076             char*      reason,
00077   /*@out@*/ statistic* stat
00078 );
00079 
00081 bool exclude_is_fsm_excluded(
00082   func_unit* funit,
00083   int        expr_id,
00084   char*      from_state,
00085   char*      to_state
00086 );
00087 
00090 void exclude_set_fsm_exclude(
00091             func_unit* funit,
00092             int        expr_id,
00093             char*      from_state,
00094             char*      to_state,
00095             int        value,
00096             char*      reason,
00097   /*@out@*/ statistic* stat
00098 );
00099 
00101 bool exclude_is_assert_excluded(
00102   func_unit* funit,
00103   char*      inst_name,
00104   int        expr_id
00105 );
00106 
00109 void exclude_set_assert_exclude(
00110             func_unit* funit,
00111             char*      inst_name,
00112             int        expr_id,
00113             int        value,
00114             char*      reason,
00115   /*@out@*/ statistic* stat
00116 );
00117 
00120 exclude_reason* exclude_find_exclude_reason(
00121   char       type,
00122   int        id,
00123   func_unit* funit
00124 );
00125 
00127 char* exclude_format_reason(
00128   const char* old_str
00129 );
00130 
00132 void exclude_db_write(
00133   exclude_reason* er,
00134   FILE*           ofile
00135 );
00136 
00139 void exclude_db_read(
00140   char**     line,
00141   func_unit* curr_funit
00142 );
00143 
00145 void exclude_db_merge(
00146   func_unit* base,
00147   char**     line
00148 );
00149 
00151 void exclude_merge(
00152   func_unit*      base,
00153   exclude_reason* er
00154 );
00155 
00157 void command_exclude(
00158   int          argc,
00159   int          last_arg,
00160   const char** argv
00161 );
00162 
00163 #endif
00164 
Generated on Sun Nov 21 00:55:34 2010 for Covered by  doxygen 1.6.3