Module: Tracksperanto

Defined in:
lib/tracksperanto.rb

Defined Under Namespace

Modules: BlockInit, Casts, ConstName, Export, Import, PFCoords, Parameters, Pipeline, Returning, Safety, ShakeGrammar, SimpleExport, Tool, UVCoordinates, ZipTuples Classes: Blacklist, BufferIO, ExtIO, FormatDetector, IOWrapper, Keyframe, Tracker, UnknownExporterError, UnknownImporterError, UnknownToolError, UnsupportedFormatError, YieldNonEmpty

Constant Summary collapse

PATH =
File.expand_path(File.dirname(__FILE__))
VERSION =
'3.5.4'

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.exportersObject

Returns the array of all exporter classes defined



22
23
24
# File 'lib/tracksperanto.rb', line 22

def exporters
  @exporters
end

.importersObject

Returns the array of all importer classes defined



25
26
27
# File 'lib/tracksperanto.rb', line 25

def importers
  @importers
end

.toolsObject

Returns the array of all available tools



28
29
30
# File 'lib/tracksperanto.rb', line 28

def tools
  @tools
end

Class Method Details

.exporter_namesObject

Returns the names of all the exporters



36
37
38
# File 'lib/tracksperanto.rb', line 36

def exporter_names
  exporters.map{|e| e.const_name }
end

.get_exporter(name) ⇒ Object

Case-insensitive search for an export module by name



73
74
75
76
77
78
79
# File 'lib/tracksperanto.rb', line 73

def self.get_exporter(name)
  exporters.each do | x |
    return x if x.const_name.downcase == name.downcase
  end
  
  raise UnknownExporterError, "Unknown exporter #{name.inspect}"
end

.get_importer(name) ⇒ Object

Case-insensitive search for an export module by name



82
83
84
85
86
87
88
# File 'lib/tracksperanto.rb', line 82

def self.get_importer(name)
  importers.each do | x |
    return x if x.const_name.downcase == name.downcase
  end
  
  raise UnknownImporterError, "Unknown importer #{name.inspect}"
end

.get_tool(name) ⇒ Object

Case-insensitive search for a tool class by name

Raises:



64
65
66
67
68
69
70
# File 'lib/tracksperanto.rb', line 64

def self.get_tool(name)
  tools.each do | x |
    return x if x.const_name.downcase == name.downcase
  end
  
  raise UnknownToolError, "Unknown tool #{name.inspect}"
end

.importer_namesObject

Returns the names of all the importers



31
32
33
# File 'lib/tracksperanto.rb', line 31

def importer_names
  importers.map{|e| e.const_name }
end

.tool_namesObject

Returns the names of all the tools



41
42
43
# File 'lib/tracksperanto.rb', line 41

def tool_names
  tools.map{|e| e.const_name }
end