Class: Vdsp::DoubleScalar
Instance Method Summary collapse
Instance Method Details
#*(other) ⇒ Object
153 154 155 156 157 158 159 |
# File 'ext/vdsp/vdsp.c', line 153
VALUE rb_double_scalar_mul(VALUE self, VALUE other)
{
assert(rb_obj_is_kind_of(other, rb_mVdspArray));
VALUE val = rb_iv_get(self, "val");
return rb_double_array_mul(other, val);
}
|
#+(other) ⇒ Object
136 137 138 139 140 141 142 |
# File 'ext/vdsp/vdsp.c', line 136
VALUE rb_double_scalar_plus(VALUE self, VALUE other)
{
assert(rb_obj_is_kind_of(other, rb_mVdspArray));
VALUE val = rb_iv_get(self, "val");
return rb_double_array_plus(other, val);
}
|
#-(other) ⇒ Object
144 145 146 147 148 149 150 151 |
# File 'ext/vdsp/vdsp.c', line 144
VALUE rb_double_scalar_minus(VALUE self, VALUE other)
{
assert(rb_obj_is_kind_of(other, rb_mVdspArray));
other = rb_double_array_mul(other, DBL2NUM(-1.0));
VALUE val = rb_iv_get(self, "val");
return rb_double_array_plus(other, val);
}
|
#/(other) ⇒ Object
161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 |
# File 'ext/vdsp/vdsp.c', line 161
VALUE rb_double_scalar_div(VALUE self, VALUE other)
{
assert(rb_obj_is_kind_of(other, rb_mVdspArray));
VALUE val = rb_iv_get(self, "val");
double _a = NUM2DBL(val);
VdspArrayNativeResource *_b = get_vdsp_array_native_resource(other);
VALUE lenv = LONG2NUM(_b->length);
VALUE c = rb_class_new_instance(1, &lenv, rb_cDoubleArray);
VdspArrayNativeResource *_c = get_vdsp_array_native_resource(c);
vDSP_svdivD(&_a, _b->v.d, 1, _c->v.d, 1, _b->length);
return c;
}
|