本文整理汇总了C++中FIX2INT函数的典型用法代码示例。如果您正苦于以下问题:C++ FIX2INT函数的具体用法?C++ FIX2INT怎么用?C++ FIX2INT使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了FIX2INT函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: method_set
static VALUE method_set(VALUE self, VALUE path, VALUE data, VALUE version) {
struct zk_rb_data* zk;
Check_Type(path, T_STRING);
Check_Type(data, T_STRING);
Check_Type(version, T_FIXNUM);
Data_Get_Struct(rb_iv_get(self, "@data"), struct zk_rb_data, zk);
check_errors(zoo_set(zk->zh, RSTRING(path)->ptr, RSTRING(data)->ptr, RSTRING(data)->len, FIX2INT(version)));
return Qnil;
}
示例2: rb_Node_initialize
VALUE
rb_Node_initialize(int argc, VALUE* argv, VALUE self){
// connect
if(argc == 3){
VALUE server_value = argv[0];
Check_Type(argv[1], T_STRING);
Check_Type(argv[2], T_FIXNUM);
struct fs_server* server = NULL;
Data_Get_Struct(server_value, struct fs_server, server);
struct fs_node* node = fs_create_node(server);
struct fs_node_addr addr;
strcpy(addr.addr, StringValueCStr(argv[1]));
addr.port = FIX2INT(argv[2]);
if(fs_server_connect_node(server, node, &addr)){
RDATA(self)->data = node;
fs_node_set_script_id(node, self);
rb_funcall(self, rb_intern("server="), 1, server_value);
}else{
fs_free(node);
RDATA(node)->data = NULL;
rb_raise(rb_eRuntimeError, "connect %s:%d fail", addr.addr, addr.port);
}
return Qnil;
}
// accept
if(argc == 2){
Check_Type(argv[0], T_DATA);
Check_Type(argv[1], T_FIXNUM);
VALUE v_server = argv[0];
fs_id node_id = FIX2INT(argv[1]);
struct fs_server* server;
Data_Get_Struct(v_server, struct fs_server, server);
struct fs_node* node = fs_server_find_node_by_id(server, node_id);
if(node){
RDATA(self)->data = node;
fs_node_set_script_id(node, self);
rb_funcall(self, rb_intern("server="), 1, v_server);
}else{
rb_raise(rb_eRuntimeError, "bind node error");
}
return Qnil;
}
rb_raise(rb_eArgError, "#<ArgumentError: wrong number of arguments (%d for %d)>", argc, 3);
return Qnil;
}
示例3: t_send_datagram
static VALUE t_send_datagram (VALUE self, VALUE signature, VALUE data, VALUE data_length, VALUE address, VALUE port)
{
int b = evma_send_datagram (NUM2ULONG (signature), StringValuePtr (data), FIX2INT (data_length), StringValuePtr(address), FIX2INT(port));
return INT2NUM (b);
}
示例4: string_spec_rb_str2inum
VALUE string_spec_rb_str2inum(VALUE self, VALUE str, VALUE inum) {
int num = FIX2INT(inum);
return rb_str2inum(str, num);
}
示例5: string_spec_rb_str_resize_RSTRING_LEN
VALUE string_spec_rb_str_resize_RSTRING_LEN(VALUE self, VALUE str, VALUE size) {
VALUE modified = rb_str_resize(str, FIX2INT(size));
return INT2FIX(RSTRING_LEN(modified));
}
示例6: string_spec_rb_str_new
VALUE string_spec_rb_str_new(VALUE self, VALUE str, VALUE len) {
return rb_str_new(RSTRING_PTR(str), FIX2INT(len));
}
示例7: svg_traverse_bitmap
//.........这里部分代码省略.........
svg_audio_smil_evaluate_ex(NULL, 0, SMIL_TIMING_EVAL_REMOVE, stack->audio, stack->txh.owner);
gf_node_unregister(stack->audio, NULL);
stack->audio = NULL;
}
stack->audio_dirty = GF_TRUE;
if (stack->txurl.count) svg_play_texture(stack, &all_atts);
gf_node_dirty_clear(node, GF_SG_SVG_XLINK_HREF_DIRTY);
}
if (gf_node_dirty_get(node)) {
/*do not clear dirty state until the image is loaded*/
if (stack->txh.width) {
gf_node_dirty_clear(node, 0);
SVG_Build_Bitmap_Graph((SVG_video_stack*)gf_node_get_private(node), tr_state);
}
}
if (tr_state->traversing_mode == TRAVERSE_GET_BOUNDS) {
if (!compositor_svg_is_display_off(tr_state->svg_props)) {
gf_path_get_bounds(stack->graph->path, &tr_state->bounds);
compositor_svg_apply_local_transformation(tr_state, &all_atts, &backup_matrix, &mx_3d);
if (svg_video_get_transform_behavior(tr_state, &all_atts, &cx, &cy, &angle)) {
GF_Matrix2D mx;
tr_state->bounds.width = INT2FIX(stack->txh.width);
tr_state->bounds.height = INT2FIX(stack->txh.height);
tr_state->bounds.x = cx - tr_state->bounds.width/2;
tr_state->bounds.y = cy + tr_state->bounds.height/2;
gf_mx2d_init(mx);
gf_mx2d_add_rotation(&mx, 0, 0, angle);
gf_mx2d_apply_rect(&mx, &tr_state->bounds);
} else {
gf_mx2d_apply_rect(&tr_state->transform, &tr_state->bounds);
}
compositor_svg_restore_parent_transformation(tr_state, &backup_matrix, &mx_3d);
}
} else if (tr_state->traversing_mode == TRAVERSE_SORT) {
if (!compositor_svg_is_display_off(tr_state->svg_props) && ( *(tr_state->svg_props->visibility) != SVG_VISIBILITY_HIDDEN) ) {
GF_Matrix mx_bck;
Bool restore_mx = GF_FALSE;
compositor_svg_apply_local_transformation(tr_state, &all_atts, &backup_matrix, &mx_3d);
ctx = drawable_init_context_svg(stack->graph, tr_state);
if (!ctx || !ctx->aspect.fill_texture ) return;
if (svg_video_get_transform_behavior(tr_state, &all_atts, &cx, &cy, &angle)) {
drawable_reset_path(stack->graph);
gf_path_add_rect_center(stack->graph->path, cx, cy, INT2FIX(stack->txh.width), INT2FIX(stack->txh.height));
gf_mx2d_copy(mx_bck, tr_state->transform);
restore_mx = GF_TRUE;
gf_mx2d_init(tr_state->transform);
gf_mx2d_add_rotation(&tr_state->transform, cx, cy, angle);
}
/*even if set this is not true*/
ctx->aspect.pen_props.width = 0;
ctx->flags |= CTX_NO_ANTIALIAS;
/*if rotation, transparent*/
ctx->flags &= ~CTX_IS_TRANSPARENT;
if (ctx->transform.m[1] || ctx->transform.m[3]) {
ctx->flags |= CTX_IS_TRANSPARENT;
ctx->flags &= ~CTX_NO_ANTIALIAS;
}
else if (ctx->aspect.fill_texture->transparent)
ctx->flags |= CTX_IS_TRANSPARENT;
else if (tr_state->svg_props->opacity && (tr_state->svg_props->opacity->type==SVG_NUMBER_VALUE) && (tr_state->svg_props->opacity->value!=FIX_ONE)) {
ctx->flags = CTX_IS_TRANSPARENT;
ctx->aspect.fill_color = GF_COL_ARGB(FIX2INT(0xFF * tr_state->svg_props->opacity->value), 0, 0, 0);
}
#ifndef GPAC_DISABLE_3D
if (tr_state->visual->type_3d) {
if (!stack->graph->mesh) {
stack->graph->mesh = new_mesh();
mesh_from_path(stack->graph->mesh, stack->graph->path);
}
compositor_3d_draw_bitmap(stack->graph, &ctx->aspect, tr_state, 0, 0, FIX_ONE, FIX_ONE);
ctx->drawable = NULL;
} else
#endif
{
drawable_finalize_sort(ctx, tr_state, NULL);
}
if (restore_mx) gf_mx2d_copy(tr_state->transform, mx_bck);
compositor_svg_restore_parent_transformation(tr_state, &backup_matrix, &mx_3d);
}
}
if (stack->audio) svg_traverse_audio_ex(stack->audio, rs, GF_FALSE, tr_state->svg_props);
memcpy(tr_state->svg_props, &backup_props, sizeof(SVGPropertiesPointers));
tr_state->svg_flags = backup_flags;
}
示例8: sa_array_store
static VALUE sa_array_store(VALUE self, VALUE array, VALUE offset, VALUE value) {
rb_ary_store(array, FIX2INT(offset), value);
return Qnil;
}
示例9: sa_array_entry
static VALUE sa_array_entry(VALUE self, VALUE array, VALUE offset) {
return rb_ary_entry(array, FIX2INT(offset));
}
示例10: rb_gsl_blas_zgemm
static VALUE rb_gsl_blas_zgemm(int argc, VALUE *argv, VALUE obj)
{
gsl_matrix_complex *A = NULL, *B = NULL, *C = NULL;
gsl_complex alpha, beta, *pa = &alpha, *pb = β
CBLAS_TRANSPOSE_t TransA, TransB;
int flag = 0;
alpha.dat[0] = 1.0; alpha.dat[1] = 0.0;
beta.dat[0] = 0.0; beta.dat[1] = 0.0;
switch (argc) {
case 2:
CHECK_MATRIX_COMPLEX(argv[0]);
CHECK_MATRIX_COMPLEX(argv[1]);
Data_Get_Struct(argv[0], gsl_matrix_complex, A);
Data_Get_Struct(argv[1], gsl_matrix_complex, B);
C = gsl_matrix_complex_calloc(A->size1, B->size2);
TransA = CblasNoTrans; TransB = CblasNoTrans;
flag = 1;
break;
case 5:
CHECK_FIXNUM(argv[0]);
CHECK_FIXNUM(argv[1]);
CHECK_COMPLEX(argv[2]);
CHECK_MATRIX_COMPLEX(argv[3]);
CHECK_MATRIX_COMPLEX(argv[4]);
TransA = FIX2INT(argv[0]);
TransB = FIX2INT(argv[1]);
Data_Get_Struct(argv[2], gsl_complex, pa);
Data_Get_Struct(argv[3], gsl_matrix_complex, A);
Data_Get_Struct(argv[4], gsl_matrix_complex, B);
C = gsl_matrix_complex_calloc(A->size1, B->size2);
flag = 1;
break;
case 6:
CHECK_FIXNUM(argv[0]);
CHECK_FIXNUM(argv[1]);
CHECK_COMPLEX(argv[2]);
CHECK_MATRIX_COMPLEX(argv[3]);
CHECK_MATRIX_COMPLEX(argv[4]);
CHECK_COMPLEX(argv[5]);
TransA = FIX2INT(argv[0]);
TransB = FIX2INT(argv[1]);
Data_Get_Struct(argv[2], gsl_complex, pa);
Data_Get_Struct(argv[3], gsl_matrix_complex, A);
Data_Get_Struct(argv[4], gsl_matrix_complex, B);
Data_Get_Struct(argv[5], gsl_complex, pb);
C = gsl_matrix_complex_calloc(A->size1, B->size2);
flag = 1;
break;
case 7:
CHECK_FIXNUM(argv[0]);
CHECK_FIXNUM(argv[1]);
CHECK_COMPLEX(argv[2]);
CHECK_MATRIX_COMPLEX(argv[3]);
CHECK_MATRIX_COMPLEX(argv[4]);
CHECK_COMPLEX(argv[5]);
CHECK_MATRIX_COMPLEX(argv[6]);
TransA = FIX2INT(argv[0]);
TransB = FIX2INT(argv[1]);
Data_Get_Struct(argv[2], gsl_complex, pa);
Data_Get_Struct(argv[3], gsl_matrix_complex, A);
Data_Get_Struct(argv[4], gsl_matrix_complex, B);
Data_Get_Struct(argv[5], gsl_complex, pb);
Data_Get_Struct(argv[6], gsl_matrix_complex, C);
break;
default:
rb_raise(rb_eArgError, "wrong number of arguments (%d for 2 or 7)", argc);
break;
}
gsl_blas_zgemm(TransA, TransB, alpha, A, B, beta, C);
if (flag == 1) return Data_Wrap_Struct(cgsl_matrix_complex, 0, gsl_matrix_complex_free, C);
else return argv[6];
}
示例11: rb_gsl_blas_zhemm
static VALUE rb_gsl_blas_zhemm(int argc, VALUE *argv, VALUE obj)
{
gsl_matrix_complex *A = NULL, *B = NULL, *C = NULL;
gsl_complex alpha, beta, *pa = &alpha, *pb = β
CBLAS_SIDE_t Side;
CBLAS_UPLO_t Uplo;
int flag = 0;
alpha = gsl_complex_rect(1.0, 0.0);
beta = gsl_complex_rect(0.0, 0.0);
switch (argc) {
case 2:
CHECK_MATRIX_COMPLEX(argv[0]);
CHECK_MATRIX_COMPLEX(argv[1]);
Data_Get_Struct(argv[0], gsl_matrix_complex, A);
Data_Get_Struct(argv[1], gsl_matrix_complex, B);
C = gsl_matrix_complex_calloc(A->size1, B->size2);
Side = CblasLeft; Uplo = CblasUpper;
flag = 1;
break;
case 5:
CHECK_FIXNUM(argv[0]);
CHECK_FIXNUM(argv[1]);
CHECK_COMPLEX(argv[2]);
CHECK_MATRIX_COMPLEX(argv[3]);
CHECK_MATRIX_COMPLEX(argv[4]);
Side = FIX2INT(argv[0]);
Uplo = FIX2INT(argv[1]);
Data_Get_Struct(argv[2], gsl_complex, pa);
Data_Get_Struct(argv[3], gsl_matrix_complex, A);
Data_Get_Struct(argv[4], gsl_matrix_complex, B);
C = gsl_matrix_complex_calloc(A->size1, B->size2);
flag = 1;
break;
case 6:
CHECK_FIXNUM(argv[0]);
CHECK_FIXNUM(argv[1]);
CHECK_COMPLEX(argv[2]);
CHECK_MATRIX_COMPLEX(argv[3]);
CHECK_MATRIX_COMPLEX(argv[4]);
CHECK_COMPLEX(argv[5]);
CHECK_MATRIX_COMPLEX(argv[6]);
Side = FIX2INT(argv[0]);
Uplo = FIX2INT(argv[1]);
Data_Get_Struct(argv[2], gsl_complex, pa);
Data_Get_Struct(argv[3], gsl_matrix_complex, A);
Data_Get_Struct(argv[4], gsl_matrix_complex, B);
Data_Get_Struct(argv[5], gsl_complex, pb);
C = gsl_matrix_complex_calloc(A->size1, B->size2);
flag = 1;
break;
case 7:
CHECK_FIXNUM(argv[0]);
CHECK_FIXNUM(argv[1]);
CHECK_COMPLEX(argv[2]);
CHECK_MATRIX_COMPLEX(argv[3]);
CHECK_MATRIX_COMPLEX(argv[4]);
CHECK_COMPLEX(argv[5]);
CHECK_MATRIX_COMPLEX(argv[6]);
Side = FIX2INT(argv[0]);
Uplo = FIX2INT(argv[1]);
Data_Get_Struct(argv[2], gsl_complex, pa);
Data_Get_Struct(argv[3], gsl_matrix_complex, A);
Data_Get_Struct(argv[4], gsl_matrix_complex, B);
Data_Get_Struct(argv[5], gsl_complex, pb);
Data_Get_Struct(argv[6], gsl_matrix_complex, C);
break;
default:
rb_raise(rb_eArgError, "wrong number of arguments (%d for 2 or 7)", argc);
break;
}
gsl_blas_zhemm(Side, Uplo, alpha, A, B, beta, C);
if (flag == 1) return Data_Wrap_Struct(cgsl_matrix_complex, 0, gsl_matrix_complex_free, C);
else return argv[6];
}
示例12: rb_gsl_blas_dgemm
static VALUE rb_gsl_blas_dgemm(int argc, VALUE *argv, VALUE obj)
{
gsl_matrix *A = NULL, *B = NULL, *C = NULL;
double alpha, beta;
CBLAS_TRANSPOSE_t TransA, TransB;
int flag = 0;
switch (argc) {
case 2:
CHECK_MATRIX(argv[0]);
CHECK_MATRIX(argv[1]);
Data_Get_Struct(argv[0], gsl_matrix, A);
Data_Get_Struct(argv[1], gsl_matrix, B);
C = gsl_matrix_calloc(A->size1, B->size2);
alpha = 1.0;
beta = 0.0;
TransA = CblasNoTrans; TransB = CblasNoTrans;
flag = 1;
break;
case 5:
CHECK_FIXNUM(argv[0]);
CHECK_FIXNUM(argv[1]);
Need_Float(argv[2]);
CHECK_MATRIX(argv[3]);
CHECK_MATRIX(argv[4]);
TransA = FIX2INT(argv[0]);
TransB = FIX2INT(argv[1]);
alpha = NUM2DBL(argv[2]);
Data_Get_Struct(argv[3], gsl_matrix, A);
Data_Get_Struct(argv[4], gsl_matrix, B);
C = gsl_matrix_calloc(A->size1, B->size2);
beta = 0.0;
flag = 1;
break;
case 6:
CHECK_FIXNUM(argv[0]);
CHECK_FIXNUM(argv[1]);
Need_Float(argv[2]);
CHECK_MATRIX(argv[3]);
CHECK_MATRIX(argv[4]);
Need_Float(argv[5]);
TransA = FIX2INT(argv[0]);
TransB = FIX2INT(argv[1]);
alpha = NUM2DBL(argv[2]);
Data_Get_Struct(argv[3], gsl_matrix, A);
Data_Get_Struct(argv[4], gsl_matrix, B);
beta = NUM2DBL(argv[5]);
C = gsl_matrix_calloc(A->size1, B->size2);
flag = 1;
break;
case 7:
CHECK_FIXNUM(argv[0]);
CHECK_FIXNUM(argv[1]);
Need_Float(argv[2]);
CHECK_MATRIX(argv[3]);
CHECK_MATRIX(argv[4]);
Need_Float(argv[5]);
CHECK_MATRIX(argv[6]);
TransA = FIX2INT(argv[0]);
TransB = FIX2INT(argv[1]);
alpha = NUM2DBL(argv[2]);
Data_Get_Struct(argv[3], gsl_matrix, A);
Data_Get_Struct(argv[4], gsl_matrix, B);
beta = NUM2DBL(argv[5]);
Data_Get_Struct(argv[6], gsl_matrix, C);
break;
default:
rb_raise(rb_eArgError, "wrong number of arguments (%d for 2, 5, 6, or 7)", argc);
break;
}
gsl_blas_dgemm(TransA, TransB, alpha, A, B, beta, C);
if (flag == 1) return Data_Wrap_Struct(cgsl_matrix, 0, gsl_matrix_free, C);
else return argv[6];
}
示例13: rb_gsl_blas_dsymm
static VALUE rb_gsl_blas_dsymm(int argc, VALUE *argv, VALUE obj)
{
gsl_matrix *A = NULL, *B = NULL, *C = NULL;
double alpha, beta;
CBLAS_SIDE_t Side;
CBLAS_UPLO_t Uplo;
int flag = 0;
switch (argc) {
case 2:
CHECK_MATRIX(argv[0]);
CHECK_MATRIX(argv[1]);
Data_Get_Struct(argv[0], gsl_matrix, A);
Data_Get_Struct(argv[1], gsl_matrix, B);
C = gsl_matrix_calloc(A->size1, B->size2);
alpha = 1.0;
beta = 0.0;
Side = CblasLeft; Uplo = CblasUpper;
flag = 1;
break;
case 5:
CHECK_FIXNUM(argv[0]);
CHECK_FIXNUM(argv[1]);
Need_Float(argv[2]);
CHECK_MATRIX(argv[3]);
CHECK_MATRIX(argv[4]);
Side = FIX2INT(argv[0]);
Uplo = FIX2INT(argv[1]);
alpha = NUM2DBL(argv[2]);
Data_Get_Struct(argv[3], gsl_matrix, A);
Data_Get_Struct(argv[4], gsl_matrix, B);
C = gsl_matrix_calloc(A->size1, B->size2);
beta = 0.0;
flag = 1;
break;
case 6:
CHECK_FIXNUM(argv[0]);
CHECK_FIXNUM(argv[1]);
Need_Float(argv[2]);
CHECK_MATRIX(argv[3]);
CHECK_MATRIX(argv[4]);
Need_Float(argv[5]);
CHECK_MATRIX(argv[6]);
Side = FIX2INT(argv[0]);
Uplo = FIX2INT(argv[1]);
alpha = NUM2DBL(argv[2]);
Data_Get_Struct(argv[3], gsl_matrix, A);
Data_Get_Struct(argv[4], gsl_matrix, B);
beta = NUM2DBL(argv[5]);
C = gsl_matrix_calloc(A->size1, B->size2);
flag = 1;
break;
case 7:
CHECK_FIXNUM(argv[0]);
CHECK_FIXNUM(argv[1]);
Need_Float(argv[2]);
CHECK_MATRIX(argv[3]);
CHECK_MATRIX(argv[4]);
Need_Float(argv[5]);
CHECK_MATRIX(argv[6]);
Side = FIX2INT(argv[0]);
Uplo = FIX2INT(argv[1]);
alpha = NUM2DBL(argv[2]);
Data_Get_Struct(argv[3], gsl_matrix, A);
Data_Get_Struct(argv[4], gsl_matrix, B);
beta = NUM2DBL(argv[5]);
Data_Get_Struct(argv[6], gsl_matrix, C);
break;
default:
rb_raise(rb_eArgError, "wrong number of arguments (%d for 2 or 7)", argc);
break;
}
gsl_blas_dsymm(Side, Uplo, alpha, A, B, beta, C);
if (flag == 1) return Data_Wrap_Struct(cgsl_matrix, 0, gsl_matrix_free, C);
else return argv[6];
}
示例14: con_set_digits
static VALUE con_set_digits(VALUE self, VALUE new_value) {
decContext *self_ptr;
Data_Get_Struct(self, decContext, self_ptr);
self_ptr->digits = FIX2INT(new_value);
return INT2FIX(self_ptr->digits);
}
示例15: attr_get_common
static VALUE attr_get_common(int argc, VALUE *argv, VALUE self, enum datatype datatype)
{
oci8_base_t *base = DATA_PTR(self);
VALUE attr_type;
VALUE strict;
union {
ub1 ub1val;
ub2 ub2val;
ub4 ub4val;
ub8 ub8val;
sb1 sb1val;
sb2 sb2val;
sb4 sb4val;
sb8 sb8val;
boolean booleanval;
char *charptr;
ub1 *ub1ptr;
} v;
ub4 size = 0;
sword rv;
v.ub8val = MAGIC_NUMBER;
rb_scan_args(argc, argv, "11", &attr_type, &strict);
if (argc == 1) {
strict = Qtrue;
}
Check_Type(attr_type, T_FIXNUM);
rv = OCIAttrGet(base->hp.ptr, base->type, &v, &size, FIX2INT(attr_type), oci8_errhp);
if (!RTEST(strict)) {
if (rv == OCI_ERROR && oci8_get_error_code(oci8_errhp) == 24328) {
/* ignore ORA-24328: illegal attribute value */
return Qnil;
}
}
chker2(rv, base);
switch (datatype) {
OCINumber onum;
static VALUE cOraDate = Qnil;
case DATATYPE_UB1:
return INT2FIX(v.ub1val);
case DATATYPE_UB2:
return INT2FIX(v.ub2val);
case DATATYPE_UB4:
return UINT2NUM(v.ub4val);
case DATATYPE_UB8:
return ULL2NUM(v.ub8val);
case DATATYPE_SB1:
return INT2FIX(v.sb1val);
case DATATYPE_SB2:
return INT2FIX(v.sb2val);
case DATATYPE_SB4:
return INT2NUM(v.sb4val);
case DATATYPE_SB8:
return LL2NUM(v.sb8val);
case DATATYPE_BOOLEAN:
return v.booleanval ? Qtrue : Qfalse;
case DATATYPE_STRING:
if (size == 0 && !RTEST(strict)) {
return Qnil;
}
return rb_external_str_new_with_enc(v.charptr, size, oci8_encoding);
case DATATYPE_BINARY:
return rb_tainted_str_new(v.charptr, size);
case DATATYPE_INTEGER:
if (size > sizeof(onum.OCINumberPart) - 1) {
rb_raise(rb_eRuntimeError, "Too long size %u", size);
}
memset(&onum, 0, sizeof(onum));
onum.OCINumberPart[0] = size;
memcpy(&onum.OCINumberPart[1], v.ub1ptr, size);
return oci8_make_integer(&onum, oci8_errhp);
case DATATYPE_ORADATE:
if (NIL_P(cOraDate))
cOraDate = rb_eval_string("OraDate");
return rb_funcall(cOraDate, oci8_id_new, 6,
INT2FIX((v.ub1ptr[0] - 100) * 100 + (v.ub1ptr[1] - 100)),
INT2FIX(v.ub1ptr[2]),
INT2FIX(v.ub1ptr[3]),
INT2FIX(v.ub1ptr[4] - 1),
INT2FIX(v.ub1ptr[5] - 1),
INT2FIX(v.ub1ptr[6] - 1));
}
return Qnil;
}