Sha256: 8b7cef48ef8aea7bfbbf5664f18d81f9ab3ebbe94564583a6a485327744e3c7f

Contents?: true

Size: 1016 Bytes

Versions: 4

Compression:

Stored size: 1016 Bytes

Contents

#include "beeps/ruby/filter.h"


#include "beeps/ruby/processor.h"
#include "defs.h"


RUCY_DEFINE_WRAPPER_VALUE_FROM_TO(BEEPS_EXPORT, Beeps::PitchShift)

#define THIS  to<Beeps::PitchShift*>(self)

#define CHECK RUCY_CHECK_OBJ(Beeps::PitchShift, self)


static
VALUE alloc(VALUE klass)
{
	return value(new Beeps::RubyProcessor<Beeps::PitchShift>, klass);
}

static
VALUE set_shift(VALUE self, VALUE shift)
{
	CHECK;

	THIS->set_shift(to<float>(shift));
	return shift;
}

static
VALUE get_shift(VALUE self)
{
	CHECK;

	return value(THIS->shift());
}


static Class cPitchShift;

void
Init_beeps_pitch_shift ()
{
	Module mBeeps = rb_define_module("Beeps");

	cPitchShift = mBeeps.define_class("PitchShift", Beeps::processor_class());
	rb_define_alloc_func(cPitchShift, alloc);
	rb_define_method(cPitchShift, "shift=", RUBY_METHOD_FUNC(set_shift), 1);
	rb_define_method(cPitchShift, "shift", RUBY_METHOD_FUNC(get_shift), 0);
}


namespace Beeps
{


	Class
	pitch_shift_class ()
	{
		return cPitchShift;
	}


}// Beeps

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
beeps-0.3.3 .doc/ext/beeps/pitch_shift.cpp
beeps-0.3.2 .doc/ext/beeps/pitch_shift.cpp
beeps-0.3.1 .doc/ext/beeps/pitch_shift.cpp
beeps-0.3 .doc/ext/beeps/pitch_shift.cpp