Module: Baffle::Probes

Defined in:
lib/baffle/probe.rb

Class Method Summary collapse

Class Method Details

.<<(probe) ⇒ Object



13
14
15
# File 'lib/baffle/probe.rb', line 13

def self.<<(probe)
  @probes << probe
end

.eachObject



41
42
43
44
45
46
47
# File 'lib/baffle/probe.rb', line 41

def self.each
  self.load
  
  @probes.each do |probe|
    yield probe
  end
end

.loadObject



17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/baffle/probe.rb', line 17

def self.load
  return if @probes
  
  @probes = []
  
  Dir[File.join(File.dirname(__FILE__), "probes", "*.rb")].each do |file|
    require File.expand_path(file)
  end
  
  probe_data = YAML::load(File.open(File.join(File.dirname(__FILE__), '..', '..', 'data', 'probes.yml')))
  
  @probes.each do |probe|
    next unless probe_data[probe.name]
   
    probe_data[probe.name].each do |name, vectors|
      vectors.each do |vector|
        probe.training_data[name] << vector
      end
    end
  end
  
  @probes
end

.total_injection_valuesObject



49
50
51
52
53
# File 'lib/baffle/probe.rb', line 49

def self.total_injection_values
  self.load
  
  @probes.inject(0) { |sum, probe| sum += probe.injection_values.size * probe.repeats }
end