class Pocolog::SampleModeConfig

Attributes

logfiles[R]
specs[R]

Public Class Methods

new(io) click to toggle source
Calls superclass method Pocolog::ModeConfig.new
# File bin/pocolog, line 104
def initialize(io)
    super

    @logfiles   = Logfiles.new(*io)
    @specs      = []
end

Public Instance Methods

at(value) click to toggle source
Calls superclass method
# File bin/pocolog, line 126
def at(value)
    @default_at = value
    super if current
end
current() click to toggle source
# File bin/pocolog, line 111
def current; specs.last end
method_missing(name, *args, &block) click to toggle source
# File bin/pocolog, line 131
def method_missing(name, *args, &block)
    if current.respond_to?(name)
        current.send(name, *args)
    else
        current.samples.send(name, *args)
    end
end
stream(name) click to toggle source
# File bin/pocolog, line 113
def stream(name)
    unless s = logfiles.streams.find { |n| n.name == name }
        raise ArgumentError, "no such stream #{name}"
    end
    unless s.type
        raise ArgumentError, "no type definition found for #{name}"
    end
    specs << (spec = self.class::Spec.new(s.samples))
    if @default_at
        spec.samples.at(@default_at)
    end
end