Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 10:04:02

0001 /*
0002  Copyright (c) 1999-2014 OPEN CASCADE SAS
0003 
0004  This file is part of Open CASCADE Technology software library.
0005 
0006  This library is free software; you can redistribute it and/or modify it under
0007  the terms of the GNU Lesser General Public License version 2.1 as published
0008  by the Free Software Foundation, with special exception defined in the file
0009  OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
0010  distribution for complete text of the license and disclaimer of any warranty.
0011 
0012  Alternatively, this file may be used under the terms of Open CASCADE
0013  commercial license or contractual agreement.
0014 */
0015 
0016 /* Appel externe aux routines de lecture (en C) */ 
0017 #include <stdio.h>
0018 
0019 /*  structiges : */
0020 struct parlist {
0021   struct oneparam *first, *last;
0022   int nbparam;
0023 };
0024 
0025 struct dirpart {
0026   int typ,poi,pdef,tra,niv,vue,trf,aff,blk,sub,use,her;  /* ligne 1 */
0027   int typ2,epa,col,nbl,form;                             /* ligne 2 */
0028   char res1[10],res2[10],nom[10],num[10];
0029   struct parlist list;                                   /* liste Psect */
0030   int numpart;                                           /* n0 en Dsect */
0031 };
0032 
0033 #ifdef __cplusplus
0034 extern "C" {
0035 #endif
0036 
0037   int  igesread   (char* nomfic,int lesect[6],int modefnes);
0038 
0039   /*  structiges : */
0040   int  iges_lirpart
0041    (int* *tabval,char* *res1,char* *res2,char* *nom,char* *num,int* nbparam);
0042   void iges_stats    (int* nbpart, int* nbparam);
0043   void iges_setglobal ();
0044   void iges_nextpart ();
0045   int  iges_lirparam (int* typarg,char* *parval);
0046   void iges_finfile  (int mode);
0047   struct dirpart *iges_get_curp (void);
0048 
0049   void iges_initfile();
0050   int  iges_lire (FILE* lefic, int *numsec, char ligne[100], int modefnes);
0051   void iges_newparam(int typarg,int longval, char *parval);
0052   void iges_param(int *Pstat,char *ligne,char c_separ,char c_fin,int lonlin);
0053   void iges_Dsect (int *Dstat,int numsec,char* ligne);
0054   void iges_Psect(int numsec,char ligne[80]);
0055 
0056   /* MGE 20/07/98 */
0057   void IGESFile_Check2 (int mode,char * code, int num, char * str);
0058   void IGESFile_Check3 (int mode,char * code);
0059 
0060 #ifdef __cplusplus
0061 }
0062 #endif
0063 
0064 /*  Definition des types de parametres de l'analyseur de base IGES */
0065 #define ArgVide 0
0066 #define ArgQuid 1
0067 #define ArgChar 2
0068 #define ArgInt  3   /* Entier non signe : peut evoluer vers Real ou Char */
0069 #define ArgSign 4   /* Entier signe : peut evoluer vers Real */
0070 #define ArgReal 5
0071 #define ArgExp  6   /* Real + lettre E : attendre confirmation */
0072 #define ArgRexp 7   /* Real + Exposant : se ramene a Real */
0073 #define ArgMexp 8   /* Real + Exposant INCOMPLET (pas de point decimal) */