=================================================================== RCS file: /home/cvs/OpenXM_contrib2/asir2000/io/bload.c,v retrieving revision 1.6 retrieving revision 1.9 diff -u -p -r1.6 -r1.9 --- OpenXM_contrib2/asir2000/io/bload.c 2000/12/22 10:03:30 1.6 +++ OpenXM_contrib2/asir2000/io/bload.c 2001/09/03 07:01:08 1.9 @@ -44,7 +44,7 @@ * OF THE SOFTWARE HAS BEEN DEVELOPED BY A THIRD PARTY, THE THIRD PARTY * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE, * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE. - * $OpenXM: OpenXM_contrib2/asir2000/io/bload.c,v 1.5 2000/12/05 01:24:54 noro Exp $ + * $OpenXM: OpenXM_contrib2/asir2000/io/bload.c,v 1.8 2001/03/16 01:56:18 noro Exp $ */ #include "ca.h" #include "parse.h" @@ -66,6 +66,8 @@ void loadr(FILE *,R *); void loadp(FILE *,P *); void loadgf2n(FILE *,GF2N *); void loadgfpn(FILE *,GFPN *); +void loadgfs(FILE *,GFS *); +void loadgfsn(FILE *,GFSN *); void loadlm(FILE *,LM *); void loadmi(FILE *,MQ *); void loadcplx(FILE *,C *); @@ -83,11 +85,11 @@ extern VL file_vl; void (*loadf[])() = { 0, loadnum, loadp, loadr, loadlist, loadvect, loadmat, loadstring, 0, loaddp, loadui, loaderror,0,0,0,loadgfmmat, loadbytearray }; #if defined(INTERVAL) -int loaditv(); -int loaditvd(); -void (*nloadf[])() = { loadq, loadreal, 0, loadbf, loaditv, loaditvd, 0, loaditv, loadcplx, loadmi, loadlm, loadgf2n, loadgfpn }; +void loaditv(); +void loaditvd(); +void (*nloadf[])() = { loadq, loadreal, 0, loadbf, loaditv, loaditvd, 0, loaditv, loadcplx, loadmi, loadlm, loadgf2n, loadgfpn, loadgfs, loadgfsn }; #else -void (*nloadf[])() = { loadq, loadreal, 0, loadbf, loadcplx, loadmi, loadlm, loadgf2n, loadgfpn }; +void (*nloadf[])() = { loadq, loadreal, 0, loadbf, loadcplx, loadmi, loadlm, loadgf2n, loadgfpn, loadgfs, loadgfsn }; #endif void loadobj(s,p) @@ -197,7 +199,7 @@ BF *p; } #if defined(INTERVAL) -loaditv(s,p) +void loaditv(s,p) FILE *s; Itv *p; { @@ -209,7 +211,7 @@ Itv *p; *p = q; } -loaditvd(s,p) +void loaditvd(s,p) FILE *s; ItvD *p; { @@ -290,6 +292,32 @@ GFPN *p; for ( i = 0; i <= d; i++ ) loadobj(s,(Obj *)&body->c[i]); MKGFPN(body,*p); +} + +void loadgfs(s,p) +FILE *s; +GFS *p; +{ + GFS q; + char dmy; + + read_char(s,&dmy); + NEWGFS(q); read_int(s,(int *)&CONT(q)); + *p = q; +} + +void loadgfsn(s,p) +FILE *s; +GFSN *p; +{ + char dmy; + int d; + UM body; + + read_char(s,&dmy); read_int(s,&d); + body = UMALLOC(d); DEG(body) = d; + read_intarray(s,COEF(body),d+1); + MKGFSN(body,*p); } void loadp(s,p)