29 lines
504 B
Ruby
29 lines
504 B
Ruby
|
require 'mach/functions'
|
||
|
require 'mach/port'
|
||
|
require 'mach/clock'
|
||
|
|
||
|
module Mach
|
||
|
class Host < Port
|
||
|
include Functions
|
||
|
|
||
|
# @return [Task]
|
||
|
def self.self
|
||
|
new(Functions.mach_host_self)
|
||
|
end
|
||
|
|
||
|
def initialize(host)
|
||
|
super(:port => host)
|
||
|
end
|
||
|
|
||
|
alias_method :host, :port
|
||
|
|
||
|
def get_clock_service
|
||
|
mem = new_memory_pointer(:clock_id_t)
|
||
|
host_get_clock_service(host, 0, mem)
|
||
|
clock_id = Port.new(:port => mem.read_int)
|
||
|
Clock.new clock_id
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
|