abc-master
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
ver.h
Go to the documentation of this file.
1 /**CFile****************************************************************
2 
3  FileName [ver.h]
4 
5  SystemName [ABC: Logic synthesis and verification system.]
6 
7  PackageName [Verilog parser.]
8 
9  Synopsis [External declarations.]
10 
11  Author [Alan Mishchenko]
12 
13  Affiliation [UC Berkeley]
14 
15  Date [Ver. 1.0. Started - August 19, 2006.]
16 
17  Revision [$Id: ver.h,v 1.00 2006/08/19 00:00:00 alanmi Exp $]
18 
19 ***********************************************************************/
20 
21 #ifndef ABC__base__ver__ver_h
22 #define ABC__base__ver__ver_h
23 
24 
25 ////////////////////////////////////////////////////////////////////////
26 /// INCLUDES ///
27 ////////////////////////////////////////////////////////////////////////
28 
29 #include <stdio.h>
30 #include "base/abc/abc.h"
31 
32 ////////////////////////////////////////////////////////////////////////
33 /// PARAMETERS ///
34 ////////////////////////////////////////////////////////////////////////
35 
36 
37 
39 
40 
41 ////////////////////////////////////////////////////////////////////////
42 /// BASIC TYPES ///
43 ////////////////////////////////////////////////////////////////////////
44 
45 typedef struct Ver_Man_t_ Ver_Man_t;
46 typedef struct Ver_Stream_t_ Ver_Stream_t;
47 
48 struct Ver_Man_t_
49 {
50  // internal parameters
51  int fMapped; // mapped verilog
52  int fUseMemMan; // allocate memory manager in the networks
53  int fCheck; // checks network for currectness
54  // input file stream
55  char * pFileName;
57  int fNameLast;
59  // current design
62  // error handling
63  FILE * Output;
64  int fTopLevel;
65  int fError;
66  char sError[2000];
67  // intermediate structures
72 };
73 
74 
75 ////////////////////////////////////////////////////////////////////////
76 /// MACRO DEFINITIONS ///
77 ////////////////////////////////////////////////////////////////////////
78 
79 ////////////////////////////////////////////////////////////////////////
80 /// ITERATORS ///
81 ////////////////////////////////////////////////////////////////////////
82 
83 ////////////////////////////////////////////////////////////////////////
84 /// FUNCTION DECLARATIONS ///
85 ////////////////////////////////////////////////////////////////////////
86 
87 /*=== verCore.c ========================================================*/
88 extern Abc_Des_t * Ver_ParseFile( char * pFileName, Abc_Des_t * pGateLib, int fCheck, int fUseMemMan );
89 extern void Ver_ParsePrintErrorMessage( Ver_Man_t * p );
90 /*=== verFormula.c ========================================================*/
91 extern void * Ver_FormulaParser( char * pFormula, void * pMan, Vec_Ptr_t * vNames, Vec_Ptr_t * vStackFn, Vec_Int_t * vStackOp, char * pErrorMessage );
92 extern void * Ver_FormulaReduction( char * pFormula, void * pMan, Vec_Ptr_t * vNames, char * pErrorMessage );
93 /*=== verParse.c ========================================================*/
94 extern int Ver_ParseSkipComments( Ver_Man_t * p );
95 extern char * Ver_ParseGetName( Ver_Man_t * p );
96 /*=== verStream.c ========================================================*/
97 extern Ver_Stream_t * Ver_StreamAlloc( char * pFileName );
98 extern void Ver_StreamFree( Ver_Stream_t * p );
99 extern char * Ver_StreamGetFileName( Ver_Stream_t * p );
100 extern int Ver_StreamGetFileSize( Ver_Stream_t * p );
101 extern int Ver_StreamGetCurPosition( Ver_Stream_t * p );
102 extern int Ver_StreamGetLineNumber( Ver_Stream_t * p );
103 
104 extern int Ver_StreamIsOkey( Ver_Stream_t * p );
105 extern char Ver_StreamScanChar( Ver_Stream_t * p );
106 extern char Ver_StreamPopChar( Ver_Stream_t * p );
107 extern void Ver_StreamSkipChars( Ver_Stream_t * p, char * pCharsToSkip );
108 extern void Ver_StreamSkipToChars( Ver_Stream_t * p, char * pCharsToStop );
109 extern char * Ver_StreamGetWord( Ver_Stream_t * p, char * pCharsToStop );
110 
111 
112 
114 
115 
116 
117 #endif
118 
119 ////////////////////////////////////////////////////////////////////////
120 /// END OF FILE ///
121 ////////////////////////////////////////////////////////////////////////
122 
char * Ver_StreamGetFileName(Ver_Stream_t *p)
Definition: verStream.c:176
typedefABC_NAMESPACE_HEADER_START struct Vec_Ptr_t_ Vec_Ptr_t
INCLUDES ///.
Definition: vecPtr.h:42
int Ver_StreamGetLineNumber(Ver_Stream_t *p)
Definition: verStream.c:224
void * Ver_FormulaParser(char *pFormula, void *pMan, Vec_Ptr_t *vNames, Vec_Ptr_t *vStackFn, Vec_Int_t *vStackOp, char *pErrorMessage)
FUNCTION DEFINITIONS ///.
Definition: verFormula.c:76
void Ver_ParsePrintErrorMessage(Ver_Man_t *p)
Definition: verCore.c:278
static Llb_Mgr_t * p
Definition: llb3Image.c:950
typedefABC_NAMESPACE_IMPL_START struct Vec_Int_t_ Vec_Int_t
DECLARATIONS ///.
Definition: bblif.c:37
int fCheck
Definition: ver.h:53
char Ver_StreamPopChar(Ver_Stream_t *p)
Definition: verStream.c:275
Ver_Stream_t * pReader
Definition: ver.h:56
Abc_Des_t * pDesign
Definition: ver.h:60
int Ver_ParseSkipComments(Ver_Man_t *p)
DECLARATIONS ///.
Definition: verParse.c:45
Definition: ver.h:48
char * Ver_StreamGetWord(Ver_Stream_t *p, char *pCharsToStop)
Definition: verStream.c:397
char Ver_StreamScanChar(Ver_Stream_t *p)
Definition: verStream.c:258
DECLARATIONS ///.
void Ver_StreamSkipToChars(Ver_Stream_t *p, char *pCharsToStop)
Definition: verStream.c:349
int fMapped
Definition: ver.h:51
typedefABC_NAMESPACE_HEADER_START struct Ver_Man_t_ Ver_Man_t
INCLUDES ///.
Definition: ver.h:45
Definition: st.h:52
int fError
Definition: ver.h:65
int Ver_StreamIsOkey(Ver_Stream_t *p)
Definition: verStream.c:242
char * Ver_ParseGetName(Ver_Man_t *p)
Definition: verParse.c:91
char * pFileName
Definition: ver.h:55
#define ABC_NAMESPACE_HEADER_START
NAMESPACES ///.
Definition: abc_global.h:105
ProgressBar * pProgress
Definition: ver.h:58
Vec_Ptr_t * vNames
Definition: ver.h:68
st__table * tName2Suffix
Definition: ver.h:61
#define ABC_NAMESPACE_HEADER_END
Definition: abc_global.h:106
char sError[2000]
Definition: ver.h:66
FILE * Output
Definition: ver.h:63
int Ver_StreamGetCurPosition(Ver_Stream_t *p)
Definition: verStream.c:208
Vec_Int_t * vStackOp
Definition: ver.h:70
void Ver_StreamFree(Ver_Stream_t *p)
Definition: verStream.c:157
int fUseMemMan
Definition: ver.h:52
Ver_Stream_t * Ver_StreamAlloc(char *pFileName)
FUNCTION DEFINITIONS ///.
Definition: verStream.c:74
Vec_Ptr_t * vStackFn
Definition: ver.h:69
void Ver_StreamSkipChars(Ver_Stream_t *p, char *pCharsToSkip)
Definition: verStream.c:304
void * Ver_FormulaReduction(char *pFormula, void *pMan, Vec_Ptr_t *vNames, char *pErrorMessage)
Definition: verFormula.c:435
int Ver_StreamGetFileSize(Ver_Stream_t *p)
Definition: verStream.c:192
int fTopLevel
Definition: ver.h:64
Abc_Des_t * Ver_ParseFile(char *pFileName, Abc_Des_t *pGateLib, int fCheck, int fUseMemMan)
MACRO DEFINITIONS ///.
Definition: verCore.c:165
int fNameLast
Definition: ver.h:57
Vec_Int_t * vPerm
Definition: ver.h:71