class Object

Constants

Beep

Public Instance Methods

morse_to_string(mrs) click to toggle source
# File lib/morse_fun.rb, line 107
def morse_to_string(mrs)
        if mrs == nil
                return 0
        else
                i = 0
                while i < @morsevalue.size
                        mrs.gsub!("#{@morsevalue[i]}", "#{@morsekeys[i]}")
                        i = i + 1
                end
        end
        return mrs
end
morse_to_voice(mrs) click to toggle source
# File lib/morse_fun.rb, line 120
def morse_to_voice(mrs)
        if mrs == nil
                return 0
        else
                i = 0
                while i < mrs.size
                        if mrs[i] == '.'
                                morsound 1000, 200
                        elsif mrs[i] == '-'
                                morsound 1000, 600
                        elsif mrs[i] == ' '
                                sleep 0.25
                        end
                        i = i + 1
                end
        end
end
morsehash() click to toggle source
# File lib/morse_fun.rb, line 41
def morsehash
        mohash = Hash.new
        mohash = {     '"' => '---...',
                                ',' => '--..--',
                                '?' => '..--..',
                                '@' => '.--.-.',
                                '-' => '-....-',
                                '0' => '-----',
                                '5' => '.....',
                                '1' => '.----',
                                '2' => '..---',
                                '3' => '...--',
                                '4' => '....-',
                                '6' => '-....',
                                '7' => '--...',
                                '8' => '---..',
                                '9' => '----.',
                                '/' => '-..-.',
                                '=' => '-...-',
                                'B' => '-...',
                                'C' => '-.-.',
                                'F' => '..-.',
                                'J' => '.---',
                                'L' => '.-..',
                                'P' => '.--.',
                                'Q' => '--.-',
                                'V' => '...-',
                                'X' => '-..-',
                                'Y' => '-.--',
                                'Z' => '--..',
                                'H' => '....',
                                'D' => '-..',
                                'G' => '--.',
                                'K' => '-.-',
                                'R' => '.-.',
                                'U' => '..-',
                                'W' => '.--',
                                'S' => '...',
                                'O' => '---',
                                'M' => '--',
                                'I' => '..',
                                'A' => '.-',
                                'N' => '-.',
                                'T' => '-',
                                'E' => '.',
                                }
        @morsevalue, @morsekeys = Array.new
        @morsevalue = mohash.values
        @morsekeys = mohash.keys
end
morsound(freq, duration) click to toggle source
# File lib/morse_fun.rb, line 37
def morsound freq, duration
        Beep.call(freq, duration)
end
string_to_morse(str) click to toggle source
# File lib/morse_fun.rb, line 92
def string_to_morse(str)
        if str == nil
                return 0
        else
                str = str.upcase
                str.gsub!(" ", "  ")
                i = 0
                while i < @morsevalue.size
                        str.gsub!("#{@morsekeys[i]}", "#{@morsevalue[i]} ")
                        i = i + 1
                end
        end
        return str
end