[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[dennou-ruby:000441] Re: proto2c
川那辺です。
>川那辺さま:
>C の配列とそのサイズから、NumArray オブジェクトを作る関数を
>教えてもらえますか?よろしくお願いします。
PTR2NARYにしましょう。中身はこんなものでしょうか。
VALUE
PTR2NARY(double *c_ptr, int size)
{
BNA *bna;
NA *n_ary;
double *dp;
shape = xmalloc(sizeof(int));
shape[0] = size;
bna = alloc_bna(tDOUBLE, size);
dp = bna->ptr;
dp = c_ptr;
n_ary = alloc_na(bna, 1, shape);
return Data_Wrap_Struct(cNumArrayDouble, 0, free_na, n_ary);
}
Rubyオブジェクトを返すよりかはnumarrayの構造体を返すほうがいい、
というなら
NA *
PTR2NARY(double *c_ptr, int size)
{
BNA *bna;
double *dp;
shape = xmalloc(sizeof(int));
shape[0] = size;
bna = alloc_bna(tDOUBLE, size);
dp = bna->ptr;
dp = c_ptr;
return alloc_na(bna, 1, shape);
}
という形になりますがどちらがいいでしょうか。
--------------------------------------------------
京都大学宙空電波科学研究センター
津田研究室修士1回生 川那辺 直樹
e-mail: kawanabe@xxxxxx
--------------------------------------------------