37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
|
# File 'ext/pixel_bus.c', line 37
static
VALUE ray_pixel_bus_init(int argc, VALUE *argv, VALUE self) {
if (!say_pixel_bus_is_available())
rb_raise(rb_eRuntimeError, "pixel buses aren't available on this platform");
GLenum mode = SAY_STREAM;
VALUE rb_mode = Qnil;
rb_scan_args(argc, argv, "01", &rb_mode);
if (!NIL_P(rb_mode)) mode = ray_buf_type(rb_mode);
say_pixel_bus **ptr = NULL;
Data_Get_Struct(self, say_pixel_bus*, ptr);
*ptr = say_pixel_bus_create(mode);
return self;
}
|