Method: Vdsp::DoubleBiquad#initialize
- Defined in:
- ext/vdsp/vdsp.c
#initialize(alloc_sections) ⇒ Object
Vdsp::DoubleBiquad
993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 |
# File 'ext/vdsp/vdsp.c', line 993 VALUE rb_double_biquad_initialize(VALUE self, VALUE alloc_sections) { VdspBiquadNativeResource *p = ALLOC(VdspBiquadNativeResource); p->type = 'd'; p->coefs.ptr = NULL; p->delay.ptr = NULL; p->setup.ptr = NULL; p->sections = 0; p->alloc_sections = 0; VALUE resource = Data_Wrap_Struct(CLASS_OF(self), 0, vdsp_biquad_native_resource_delete, p); rb_iv_set(self, "native_resource", resource); long _alloc_sections = NUM2LONG(alloc_sections); if (_alloc_sections<1) { _alloc_sections = 1; } p->coefs.ptr = calloc(_alloc_sections*5, sizeof(double)); p->delay.ptr = calloc(_alloc_sections*2+2, sizeof(double)); p->alloc_sections = _alloc_sections; return self; } |