1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
|
/* Appel externe aux routines de lecture (en C) */
#include <stdio.h>
/* structiges : */
struct parlist {
struct oneparam *first, *last;
int nbparam;
};
struct dirpart {
int typ,poi,pdef,tra,niv,vue,trf,aff,blk,sub,use,her; /* ligne 1 */
int typ2,epa,col,nbl,form; /* ligne 2 */
char res1[10],res2[10],nom[10],num[10];
struct parlist list; /* liste Psect */
int numpart; /* n0 en Dsect */
};
#ifdef __cplusplus
extern "C" {
#endif
int igesread (char* nomfic,int lesect[6],int modefnes);
/* structiges : */
int iges_lirpart
(int* *tabval,char* *res1,char* *res2,char* *nom,char* *num,int* nbparam);
void iges_stats (int* nbpart, int* nbparam);
void iges_setglobal ();
void iges_nextpart ();
int iges_lirparam (int* typarg,char* *parval);
void iges_finfile (int mode);
struct dirpart *iges_get_curp (void);
void iges_initfile();
int iges_lire (FILE* lefic, int *numsec, char ligne[100], int modefnes);
void iges_newparam(int typarg,int longval, char *parval);
void iges_param(int *Pstat,char *ligne,char c_separ,char c_fin,int lonlin);
void iges_Dsect (int *Dstat,int numsec,char* ligne);
void iges_Psect(int *Pstat,int numsec,char ligne[80]);
/* MGE 20/07/98 */
void IGESFile_Check2 (int mode,char * code, int num, char * str);
void IGESFile_Check3 (int mode,char * code);
#ifdef __cplusplus
}
#endif
/* Definition des types de parametres de l'analyseur de base IGES */
#define ArgVide 0
#define ArgQuid 1
#define ArgChar 2
#define ArgInt 3 /* Entier non signe : peut evoluer vers Real ou Char */
#define ArgSign 4 /* Entier signe : peut evoluer vers Real */
#define ArgReal 5
#define ArgExp 6 /* Real + lettre E : attendre confirmation */
#define ArgRexp 7 /* Real + Exposant : se ramene a Real */
#define ArgMexp 8 /* Real + Exposant INCOMPLET (pas de point decimal) */
|