require "al_worker_ipc" require "al_worker_message" require "al_worker_timer" require "al_worker_debug" class KitchenTimer < AlWorker ## # constructor # def initialize() super( "kitchen_timer" ) end ## # イニシャライザ # def initialize2() @timer_counter = 0 @input_str = "" set_state( "INPUT" ) set_value( "display_digit", format_count(@timer_counter) ) AlWorker.log.level = Logger::DEBUG @ipc = Ipc.new() @ipc.chmod = 0666 @ipc.run( self ) @timer = Timer.periodic( 1 ) @msg = NumberedMessage.new() Debug.run( self ) end ## # 表示フォーマッティング # def format_count( n ) case n when Numeric return sprintf( "%02d:%02d", n / 60, n % 60 ) when String s = "0000" + n return "#{s[-4,2]}:#{s[-2,2]}" end end end KitchenTimer.new.run