version 1.35, 2013/10/20 14:58:20 |
version 1.36, 2013/10/20 15:29:12 |
|
|
/* -*- mode: C; coding: euc-japan -*- */ |
/* -*- mode: C; coding: euc-japan -*- */ |
/* $OpenXM: OpenXM/src/ox_toolkit/ox.c,v 1.34 2007/03/14 10:30:54 ohara Exp $ */ |
/* $OpenXM: OpenXM/src/ox_toolkit/ox.c,v 1.35 2013/10/20 14:58:20 iwane Exp $ */ |
|
|
/* |
/* |
This module includes functions for sending/receiveng CMO's. |
This module includes functions for sending/receiveng CMO's. |
Line 387 cmo *receive_cmo_tag(OXFILE *oxfp, int tag) |
|
Line 387 cmo *receive_cmo_tag(OXFILE *oxfp, int tag) |
|
static void receive_mpz(OXFILE *oxfp, mpz_ptr mpz) |
static void receive_mpz(OXFILE *oxfp, mpz_ptr mpz) |
{ |
{ |
int i; |
int i; |
int n = sizeof(mpz->_mp_d[0]) / sizeof(int); |
int n = sizeof(mpz->_mp_d[0]) / sizeof(int); |
int size = receive_int32(oxfp); |
int size = receive_int32(oxfp); |
int len = abs(size); |
int len = abs(size); |
int *ptr; |
int *ptr; |
if (n == 1) { |
if (n == 1) { |
resize_mpz(mpz, size); |
resize_mpz(mpz, size); |
} else { |
} else { |
resize_mpz(mpz, (size+1) / n); |
resize_mpz(mpz, (size+1) / n); |
} |
} |
|
|
ptr = (int *)mpz->_mp_d; |
ptr = (int *)mpz->_mp_d; |
for(i= len-1; i>=0; i--) { |
for(i=0; i<len; i++) { |
ptr[i] = receive_int32(oxfp); |
ptr[i] = receive_int32(oxfp); |
} |
} |
} |
} |
|
|
void send_ox_command(OXFILE *oxfp, int sm_command) |
void send_ox_command(OXFILE *oxfp, int sm_command) |