[BACK]Return to ox.c CVS log [TXT][DIR] Up to [local] / OpenXM / src / ox_toolkit

Diff for /OpenXM/src/ox_toolkit/ox.c between version 1.22 and 1.24

version 1.22, 2003/03/23 20:17:35 version 1.24, 2003/05/25 16:35:40
Line 1 
Line 1 
 /* -*- mode: C; coding: euc-japan -*- */  /* -*- mode: C; coding: euc-japan -*- */
 /* $OpenXM: OpenXM/src/ox_toolkit/ox.c,v 1.21 2003/02/04 20:43:55 ohara Exp $ */  /* $OpenXM: OpenXM/src/ox_toolkit/ox.c,v 1.23 2003/03/30 08:05:22 ohara Exp $ */
   
 /*  /*
    This module includes functions for sending/receiveng CMO's.     This module includes functions for sending/receiveng CMO's.
Line 44  static int          send_cmo_monomial32(OXFILE *oxfp, 
Line 44  static int          send_cmo_monomial32(OXFILE *oxfp, 
 static int          send_cmo_error2(OXFILE *oxfp, cmo_error2* c);  static int          send_cmo_error2(OXFILE *oxfp, cmo_error2* c);
 static int          send_cmo_distributed_polynomial(OXFILE *oxfp, cmo_distributed_polynomial* c);  static int          send_cmo_distributed_polynomial(OXFILE *oxfp, cmo_distributed_polynomial* c);
   
 #if defined(WITH_GMP)  
 static cmo_zz*      receive_cmo_zz(OXFILE *oxfp);  static cmo_zz*      receive_cmo_zz(OXFILE *oxfp);
 static void         receive_mpz(OXFILE *oxfp, mpz_ptr mpz);  static void         receive_mpz(OXFILE *oxfp, mpz_ptr mpz);
 static int          send_cmo_zz(OXFILE *oxfp, cmo_zz* c);  static int          send_cmo_zz(OXFILE *oxfp, cmo_zz* c);
 static int          send_mpz(OXFILE *oxfp, mpz_ptr mpz);  static int          send_mpz(OXFILE *oxfp, mpz_ptr mpz);
 #endif /* WITH_GMP */  
   
 /* hook functions. (yet not implemented) */  /* hook functions. (yet not implemented) */
 static hook_t hook_before_send_cmo = NULL;  static hook_t hook_before_send_cmo = NULL;
Line 185  static cmo_monomial32* receive_cmo_monomial32(OXFILE *
Line 183  static cmo_monomial32* receive_cmo_monomial32(OXFILE *
     return c;      return c;
 }  }
   
 #if defined(WITH_GMP)  
 static cmo_zz* receive_cmo_zz(OXFILE *oxfp)  static cmo_zz* receive_cmo_zz(OXFILE *oxfp)
 {  {
     cmo_zz* c = new_cmo_zz();      cmo_zz* c = new_cmo_zz();
     receive_mpz(oxfp, c->mpz);      receive_mpz(oxfp, c->mpz);
     return c;      return c;
 }  }
 #endif /* WITH_GMP */  
   
 static cmo_zero* receive_cmo_zero(OXFILE *oxfp)  static cmo_zero* receive_cmo_zero(OXFILE *oxfp)
 {  {
Line 235  static cmo_error2* receive_cmo_error2(OXFILE *oxfp)
Line 231  static cmo_error2* receive_cmo_error2(OXFILE *oxfp)
 /* receive_cmo() is called after receive_ox_tag(). */  /* receive_cmo() is called after receive_ox_tag(). */
 cmo* receive_cmo(OXFILE *oxfp)  cmo* receive_cmo(OXFILE *oxfp)
 {  {
     cmo* m;  
     int tag = receive_int32(oxfp);      int tag = receive_int32(oxfp);
       return receive_cmo_tag(oxfp, tag);
   }
   
   cmo *receive_cmo_tag(OXFILE *oxfp, int tag)
   {
       cmo* m;
     switch(tag) {      switch(tag) {
     case CMO_NULL:      case CMO_NULL:
         m = receive_cmo_null(oxfp);          m = receive_cmo_null(oxfp);
Line 256  cmo* receive_cmo(OXFILE *oxfp)
Line 257  cmo* receive_cmo(OXFILE *oxfp)
     case CMO_MONOMIAL32:      case CMO_MONOMIAL32:
         m = (cmo *)receive_cmo_monomial32(oxfp);          m = (cmo *)receive_cmo_monomial32(oxfp);
         break;          break;
 #if defined(WITH_GMP)  
     case CMO_ZZ:      case CMO_ZZ:
         m = (cmo *)receive_cmo_zz(oxfp);          m = (cmo *)receive_cmo_zz(oxfp);
         break;          break;
 #endif /* WITH_GMP */  
     case CMO_ZERO:      case CMO_ZERO:
         m = (cmo *)receive_cmo_zero(oxfp);          m = (cmo *)receive_cmo_zero(oxfp);
         break;          break;
Line 285  cmo* receive_cmo(OXFILE *oxfp)
Line 284  cmo* receive_cmo(OXFILE *oxfp)
     return m;      return m;
 }  }
   
 #if defined(WITH_GMP)  
 static void receive_mpz(OXFILE *oxfp, mpz_ptr mpz)  static void receive_mpz(OXFILE *oxfp, mpz_ptr mpz)
 {  {
     int i;      int i;
Line 297  static void receive_mpz(OXFILE *oxfp, mpz_ptr mpz)
Line 295  static void receive_mpz(OXFILE *oxfp, mpz_ptr mpz)
         mpz->_mp_d[i] = receive_int32(oxfp);          mpz->_mp_d[i] = receive_int32(oxfp);
     }      }
 }  }
 #endif /* WITH_GMP */  
   
 void send_ox_command(OXFILE *oxfp, int sm_command)  void send_ox_command(OXFILE *oxfp, int sm_command)
 {  {
Line 482  static int send_cmo_monomial32(OXFILE *oxfp, cmo_monom
Line 479  static int send_cmo_monomial32(OXFILE *oxfp, cmo_monom
     return 0;      return 0;
 }  }
   
 #if defined(WITH_GMP)  
 static int send_cmo_zz(OXFILE *oxfp, cmo_zz* c)  static int send_cmo_zz(OXFILE *oxfp, cmo_zz* c)
 {  {
     send_mpz(oxfp, c->mpz);      send_mpz(oxfp, c->mpz);
     return 0;      return 0;
 }  }
 #endif /* WITH_GMP */  
   
 static int send_cmo_error2(OXFILE *oxfp, cmo_error2* c)  static int send_cmo_error2(OXFILE *oxfp, cmo_error2* c)
 {  {
Line 528  void send_cmo(OXFILE *oxfp, cmo* c)
Line 523  void send_cmo(OXFILE *oxfp, cmo* c)
     case CMO_MONOMIAL32:      case CMO_MONOMIAL32:
         send_cmo_monomial32(oxfp, (cmo_monomial32 *)c);          send_cmo_monomial32(oxfp, (cmo_monomial32 *)c);
         break;          break;
 #if defined(WITH_GMP)  
     case CMO_ZZ:      case CMO_ZZ:
         send_cmo_zz(oxfp, (cmo_zz *)c);          send_cmo_zz(oxfp, (cmo_zz *)c);
         break;          break;
 #endif /* WITH_GMP */  
     case CMO_DISTRIBUTED_POLYNOMIAL:      case CMO_DISTRIBUTED_POLYNOMIAL:
         send_cmo_distributed_polynomial(oxfp, (cmo_distributed_polynomial *)c);          send_cmo_distributed_polynomial(oxfp, (cmo_distributed_polynomial *)c);
         break;          break;
Line 541  void send_cmo(OXFILE *oxfp, cmo* c)
Line 534  void send_cmo(OXFILE *oxfp, cmo* c)
     }      }
 }  }
   
 #if defined(WITH_GMP)  
 static int send_mpz(OXFILE *oxfp, mpz_ptr mpz)  static int send_mpz(OXFILE *oxfp, mpz_ptr mpz)
 {  {
     int i;      int i;
Line 552  static int send_mpz(OXFILE *oxfp, mpz_ptr mpz)
Line 544  static int send_mpz(OXFILE *oxfp, mpz_ptr mpz)
     }      }
     return 0;      return 0;
 }  }
 #endif /* WITH_GMP */  
   
 ox_data* new_ox_data(cmo* c)  ox_data* new_ox_data(cmo* c)
 {  {

Legend:
Removed from v.1.22  
changed lines
  Added in v.1.24

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>