Sha256: da460f7fca0d20e013556dde10d5362f4f6bff1b38b9ccda8de9db187c0aabc9
Contents?: true
Size: 1.78 KB
Versions: 6
Compression:
Stored size: 1.78 KB
Contents
#include "reflex/ruby/timer.h" #include "reflex/exception.h" #include "reflex/ruby/view.h" #include "reflex/ruby/selector.h" #include "defs.h" #include "selector.h" RUCY_DEFINE_WRAPPER_VALUE_FROM_TO(Reflex::Timer) #define THIS to<Reflex::Timer*>(self) #define CHECK RUCY_CHECK_OBJ(Reflex::Timer, self) #define CALL(fun) RUCY_CALL_SUPER(THIS, fun) static VALUE alloc(VALUE klass) { Reflex::reflex_error(__FILE__, __LINE__, "can not instantiate Timer class."); } static VALUE stop(VALUE self) { CHECK; THIS->stop(); } static VALUE get_owner(VALUE self) { CHECK; return value(THIS->owner()); } static VALUE get_id(VALUE self) { CHECK; return value(THIS->id()); } static VALUE get_interval(VALUE self) { CHECK; return value(THIS->interval()); } static VALUE set_count(VALUE self, VALUE count) { CHECK; THIS->set_count(to<int>(count)); return count; } static VALUE get_count(VALUE self) { CHECK; return value(THIS->count()); } static VALUE is_finished(VALUE self) { CHECK; return value(THIS->is_finished()); } static Class cTimer; void Init_timer () { Module mReflex = rb_define_module("Reflex"); cTimer = rb_define_class_under(mReflex, "Timer", rb_cObject); rb_define_alloc_func(cTimer, alloc); rb_define_method(cTimer, "stop", RUBY_METHOD_FUNC(stop), 0); rb_define_method(cTimer, "owner", RUBY_METHOD_FUNC(get_owner), 0); rb_define_method(cTimer, "id", RUBY_METHOD_FUNC(get_id), 0); rb_define_method(cTimer, "interval", RUBY_METHOD_FUNC(get_interval), 0); rb_define_method(cTimer, "count=", RUBY_METHOD_FUNC(set_count), 1); rb_define_method(cTimer, "count", RUBY_METHOD_FUNC(get_count), 0); cTimer.define_method("finished?", is_finished); define_selector_methods<Reflex::Timer>(cTimer); } namespace Reflex { Class timer_class () { return cTimer; } }// Reflex
Version data entries
6 entries across 6 versions & 1 rubygems