My Project  0.0.16
QUCS Mapping
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
check_zvr.h
Go to the documentation of this file.
1 /*
2  * check_zvr.h - checker definitions for a zvr file
3  *
4  * Copyright (C) 2006 Stefan Jahn <stefan@lkcc.org>
5  *
6  * This is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 2, or (at your option)
9  * any later version.
10  *
11  * This software is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this package; see the file COPYING. If not, write to
18  * the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor,
19  * Boston, MA 02110-1301, USA.
20  *
21  * $Id: check_zvr.h 1825 2011-03-11 20:42:14Z ela $
22  *
23  */
24 
25 #ifndef __CHECK_ZVR_H__
26 #define __CHECK_ZVR_H__
27 
28 class dataset;
29 class vector;
30 
31 /* Externalize variables used by the scanner and parser. */
32 extern int zvr_lineno;
33 extern FILE * zvr_in;
34 void zvr_restart (FILE *);
35 
36 __BEGIN_DECLS
37 
38 /* Available functions of the checker. */
39 int zvr_check (void);
40 int zvr_parse (void);
41 int zvr_error (char *);
42 int zvr_lex (void);
43 int zvr_lex_destroy (void);
44 void zvr_destroy (void);
45 void zvr_init (void);
46 
47 __END_DECLS
48 
49 /* Declaration of ZVR data structures. */
50 extern dataset * zvr_result;
51 extern struct zvr_data_t * zvr_root;
52 
53 struct zvr_header_t {
54  double zref;
55  double start;
56  double stop;
57  char * funit;
58  int points;
59  char * d_TYP;
60  char * d_UNT;
61  char * d_FMT;
62 };
63 
64 struct zvr_vector_t {
65  char * n1;
66  char * n2;
67  char * nf;
70 };
71 
72 struct zvr_line_t {
73  double d;
74  double r, i;
75  struct zvr_line_t * next;
76 };
77 
78 struct zvr_data_t {
79  struct zvr_header_t * h;
80  struct zvr_vector_t * v;
81  struct zvr_line_t * d;
82  struct zvr_data_t * next;
83 };
84 
85 #endif /* __CHECK_ZVR_H__ */