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

Diff for /OpenXM/src/ox_toolkit/ox_toolkit.h between version 1.36 and 1.46

version 1.36, 2015/08/04 05:24:44 version 1.46, 2020/11/01 10:28:22
Line 1 
Line 1 
 /* -*- mode: C -*- */  /* -*- mode: C -*- */
 /* $OpenXM: OpenXM/src/ox_toolkit/ox_toolkit.h,v 1.35 2008/08/01 08:29:40 iwane Exp $ */  /* $OpenXM: OpenXM/src/ox_toolkit/ox_toolkit.h,v 1.45 2018/04/05 05:31:51 ohara Exp $ */
   
 #ifndef _OX_TOOLKIT_H_  #ifndef _OX_TOOLKIT_H_
 #define _OX_TOOLKIT_H_  #define _OX_TOOLKIT_H_
   
   
 #include <stdio.h>  #include <stdio.h>
   #include <string.h>
 #include <gmp.h>  #include <gmp.h>
 #include <mpfr.h>  #include <mpfr.h>
 #include <ox/cmotag.h>  #include <ox/cmotag.h>
Line 13 
Line 14 
 #include <ox/smCommand.h>  #include <ox/smCommand.h>
 #include <gc/gc.h>  #include <gc/gc.h>
   
   #if defined(_MSC_VER)
   #include <malloc.h>
   #else
   #include <sys/select.h>
   #endif
   
 #define MALLOC(x) GC_MALLOC((x))  #define MALLOC(x) GC_MALLOC((x))
 #define MALLOC_ATOMIC(x) GC_MALLOC_ATOMIC((x))  #define MALLOC_ATOMIC(x) GC_MALLOC_ATOMIC((x))
 #define ALLOCA(x) alloca((x))  #define ALLOCA(x) alloca((x))
Line 36  typedef struct {
Line 43  typedef struct {
 typedef struct mathcap {  typedef struct mathcap {
     table *cmotbl;      table *cmotbl;
     table *smtbl;      table *smtbl;
       char  **opts;
 } mathcap;  } mathcap;
   
 /* OpenXM File Descripter */  /* OpenXM File Descripter */
Line 55  typedef struct OXFILE{
Line 63  typedef struct OXFILE{
     double (*receive_double)(struct OXFILE *oxfp);      double (*receive_double)(struct OXFILE *oxfp);
 } OXFILE;  } OXFILE;
   
   #if 0
   #define OX_FD_SETSIZE   FD_SETSIZE
   #else
   #define OX_FD_SETSIZE   32
   #endif
   
   typedef struct {
       int count;
       fd_set fdset;
       OXFILE *p[OX_FD_SETSIZE];
   } OXFILE_set;
   
 typedef struct cmo {  typedef struct cmo {
     int tag;      int tag;
 } cmo;  } cmo;
Line 126  typedef struct {
Line 146  typedef struct {
   
 typedef struct {  typedef struct {
     int tag;      int tag;
       cmo *re,*im;
   } cmo_complex;
   
   typedef struct {
       int tag;
     double d; /* machine dependent */      double d; /* machine dependent */
 } cmo_double;  } cmo_double;
   
Line 198  cmo_zz*            new_cmo_zz_set_string(char* s);
Line 223  cmo_zz*            new_cmo_zz_set_string(char* s);
 cmo_qq*            new_cmo_qq();  cmo_qq*            new_cmo_qq();
 cmo_qq*            new_cmo_qq_set_mpq(mpq_ptr q);  cmo_qq*            new_cmo_qq_set_mpq(mpq_ptr q);
 cmo_qq*            new_cmo_qq_set_mpz(mpz_ptr num, mpz_ptr den);  cmo_qq*            new_cmo_qq_set_mpz(mpz_ptr num, mpz_ptr den);
   cmo_bf*            new_cmo_bf();
 cmo_bf*            new_cmo_bf_set_mpfr(mpfr_ptr q);  cmo_bf*            new_cmo_bf_set_mpfr(mpfr_ptr q);
   cmo_complex*       new_cmo_complex();
   cmo_complex*       new_cmo_complex_set_re_im(cmo *re,cmo *im);
 cmo_zero*          new_cmo_zero();  cmo_zero*          new_cmo_zero();
 cmo_double*        new_cmo_double(double d);  cmo_double*        new_cmo_double(double d);
 cmo_distributed_polynomial* new_cmo_distributed_polynomial();  cmo_distributed_polynomial* new_cmo_distributed_polynomial();
 cmo_dms_generic*   new_cmo_dms_generic();  cmo_dms_generic*   new_cmo_dms_generic();
 cmo_ring_by_name*  new_cmo_ring_by_name(cmo* ob);  cmo_ring_by_name*  new_cmo_ring_by_name(cmo* ob);
 cmo_indeterminate* new_cmo_indeterminate(cmo* ob);  cmo_indeterminate* new_cmo_indeterminate(cmo* ob);
   cmo_indeterminate* new_cmo_indeterminate_set_name(char *s);
 cmo_polynomial_in_one_variable* new_cmo_polynomial_in_one_variable(int var);  cmo_polynomial_in_one_variable* new_cmo_polynomial_in_one_variable(int var);
 cmo_recursive_polynomial* new_cmo_recursive_polynomial(cmo_list* ringdef, cmo* coef);  cmo_recursive_polynomial* new_cmo_recursive_polynomial(cmo_list* ringdef, cmo* coef);
 cmo_tree*          new_cmo_tree(cmo_string* name, cmo_list *attributes, cmo_list *leaves);  cmo_tree*          new_cmo_tree(cmo_string* name, cmo_list *attributes, cmo_list *leaves);
Line 259  cmo_list*          list_append_monomial(cmo_list* , cm
Line 288  cmo_list*          list_append_monomial(cmo_list* , cm
 cmo_list*          list_appendl(cmo_list*, ...);  cmo_list*          list_appendl(cmo_list*, ...);
 int                list_length(cmo_list* );  int                list_length(cmo_list* );
 cmo*               list_nth(cmo_list* , int n);  cmo*               list_nth(cmo_list* , int n);
   cell*              list_nth_cell(cmo_list* , int n);
   cmo*               list_first_cmo(cmo_list *);
   char*              cmo_indeterminate_get_name(cmo_indeterminate *);
   
 int                cmolen_cmo(cmo* m);  int                cmolen_cmo(cmo* m);
 void               dump_buffer_init(char *s);  void               dump_buffer_init(char *s);
Line 269  void               dump_ox_data(ox_data* m);
Line 301  void               dump_ox_data(ox_data* m);
 void               print_cmo(cmo* c);  void               print_cmo(cmo* c);
 void               resize_mpz(mpz_ptr mpz, int size);  void               resize_mpz(mpz_ptr mpz, int size);
   
   int                cmo_to_int(cmo *n);
   
 typedef cmo *(*hook_t)(OXFILE *, cmo *);  typedef cmo *(*hook_t)(OXFILE *, cmo *);
   
 int add_hook_before_send_cmo(hook_t func);  int add_hook_before_send_cmo(hook_t func);
Line 289  char*    get_symbol_by_tag(int tag);
Line 323  char*    get_symbol_by_tag(int tag);
 /* for mathcap database */  /* for mathcap database */
 mathcap *new_mathcap();  mathcap *new_mathcap();
 void mathcap_init(int ver, char *vstr, char *sysname, int cmos[], int sms[]);  void mathcap_init(int ver, char *vstr, char *sysname, int cmos[], int sms[]);
   void mathcap_init2(int ver, char *vstr, char *sysname, int cmos[], int sms[], char *options[]);
 cmo_mathcap* mathcap_get(mathcap *);  cmo_mathcap* mathcap_get(mathcap *);
 mathcap *mathcap_update(mathcap *, cmo_mathcap *mc);  mathcap *mathcap_update(mathcap *, cmo_mathcap *mc);
 int mathcap_allowQ_cmo(mathcap *, cmo *ob);  int mathcap_allowQ_cmo(mathcap *, cmo *ob);
Line 320  char *generate_otp();
Line 355  char *generate_otp();
   
 int ox_stderr_init(FILE *fp);  int ox_stderr_init(FILE *fp);
 int ox_printf(char *format, ...);  int ox_printf(char *format, ...);
   
   int gclose();
   int gopen();
   int gFlush();
   int moveto(int x, int y);
   int lineto(int x, int y);
   int setpixel(int x, int y);
   
 #ifdef __cplusplus  #ifdef __cplusplus
 }  }

Legend:
Removed from v.1.36  
changed lines
  Added in v.1.46

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