class Babeltrace2::UserPlugin

Attributes

author[R]
description[R]
get_author[R]
get_description[R]
get_license[R]
get_name[R]
get_path[RW]
license[R]
major[R]
minor[R]
name[R]
patch[R]
path[RW]
version_extra[R]

Public Class Methods

new(name:, author: nil, description: nil, license: nil, path: nil, major: 0, minor: 0, patch: 0, version_extra: nil) click to toggle source
# File lib/babeltrace2/plugin/plugin-dev.rb, line 15
def initialize(name:, author: nil, description: nil, license: nil, path: nil,
               major: 0, minor: 0, patch: 0, version_extra: nil)
  @name = name
  @author = author
  @description = description
  @license = license
  @path = path
  @major = major.to_i
  @minor = minor.to_i
  @patch = patch.to_i
  @version_extra = version_extra
  @component_classes = []
  @user_component_classes = []
end

Public Instance Methods

component_class_addresses()
component_classes()
filter_component_class_count()
filter_component_classes()
get_component_class_addresses() click to toggle source
# File lib/babeltrace2/plugin/plugin-dev.rb, line 50
def get_component_class_addresses
  get_component_classes.collect { |c|
    c.handle.to_ptr.to_i
  }
end
Also aliased as: component_class_addresses
get_component_classes() click to toggle source
# File lib/babeltrace2/plugin/plugin-dev.rb, line 45
def get_component_classes
  @component_classes
end
Also aliased as: component_classes
get_filter_component_class(filter_component_class) click to toggle source
# File lib/babeltrace2/plugin/plugin-dev.rb, line 122
def get_filter_component_class(filter_component_class)
  case filter_component_class
  when String
    get_filter_component_class_by_name(filter_component_class)
  when Integer
    get_filter_component_class_by_index(filter_component_class)
  else
    raise TypeError, "wrong type for filter component class query"
  end
end
get_filter_component_class_by_index(index) click to toggle source
# File lib/babeltrace2/plugin/plugin-dev.rb, line 91
def get_filter_component_class_by_index(index)
  get_filter_component_classes[index]
end
get_filter_component_class_by_name(name) click to toggle source
# File lib/babeltrace2/plugin/plugin-dev.rb, line 103
def get_filter_component_class_by_name(name)
  get_filter_component_classes.find { |c| c.name == name }
end
get_filter_component_class_count() click to toggle source
# File lib/babeltrace2/plugin/plugin-dev.rb, line 72
def get_filter_component_class_count
  get_filter_component_classes.count
end
Also aliased as: filter_component_class_count
get_filter_component_classes() click to toggle source
# File lib/babeltrace2/plugin/plugin-dev.rb, line 67
def get_filter_component_classes
  @component_classes.select { |c| c.filter? }
end
Also aliased as: filter_component_classes
get_sink_component_class(sink_component_class) click to toggle source
# File lib/babeltrace2/plugin/plugin-dev.rb, line 133
def get_sink_component_class(sink_component_class)
  case sink_component_class
  when String
    get_sink_component_class_by_name(sink_component_class)
  when Integer
    get_sink_component_class_by_index(sink_component_class)
  else
    raise TypeError, "wrong type for sink component class query"
  end
end
get_sink_component_class_by_index(index) click to toggle source
# File lib/babeltrace2/plugin/plugin-dev.rb, line 95
def get_sink_component_class_by_index(index)
  get_sink_component_classes[index]
end
get_sink_component_class_by_name(name) click to toggle source
# File lib/babeltrace2/plugin/plugin-dev.rb, line 107
def get_sink_component_class_by_name(name)
  get_sink_component_classes.find { |c| c.name == name }
end
get_sink_component_class_count() click to toggle source
# File lib/babeltrace2/plugin/plugin-dev.rb, line 82
def get_sink_component_class_count
  get_sink_component_classes.count
end
Also aliased as: sink_component_class_count
get_sink_component_classes() click to toggle source
# File lib/babeltrace2/plugin/plugin-dev.rb, line 77
def get_sink_component_classes
  @component_classes.select { |c| c.sink? }
end
Also aliased as: sink_component_classes
get_source_component_class(source_component_class) click to toggle source
# File lib/babeltrace2/plugin/plugin-dev.rb, line 111
def get_source_component_class(source_component_class)
  case source_component_class
  when String
    get_source_component_class_by_name(source_component_class)
  when Integer
    get_source_component_class_by_index(source_component_class)
  else
    raise TypeError, "wrong type for source component class query"
  end
end
get_source_component_class_by_index(index) click to toggle source
# File lib/babeltrace2/plugin/plugin-dev.rb, line 87
def get_source_component_class_by_index(index)
  get_source_component_classes[index]
end
get_source_component_class_by_name(name) click to toggle source
# File lib/babeltrace2/plugin/plugin-dev.rb, line 99
def get_source_component_class_by_name(name)
  get_source_component_classes.find { |c| c.name == name }
end
get_source_component_class_count() click to toggle source
# File lib/babeltrace2/plugin/plugin-dev.rb, line 62
def get_source_component_class_count
  get_source_component_classes.count
end
Also aliased as: source_component_class_count
get_source_component_classes() click to toggle source
# File lib/babeltrace2/plugin/plugin-dev.rb, line 57
def get_source_component_classes
  @component_classes.select { |c| c.source? }
end
Also aliased as: source_component_classes
get_version() click to toggle source
# File lib/babeltrace2/plugin/plugin-dev.rb, line 40
def get_version
  BTVersion::Number.new(major, minor, patch, extra)
end
Also aliased as: version
push(component)
register(component)
register_component(component)
register_component_class(component) click to toggle source
# File lib/babeltrace2/plugin/plugin-dev.rb, line 144
def register_component_class(component)
  raise "component with same name and type already exist" if @component_classes.find { |c| c.type == component.type && c.name == component.name}
  if component.kind_of?(Class) && component < UserComponentClass
    component = component.new
    @user_component_classes.push component
    component = component.bt_component_class
  end
  @component_classes.push component
  self
end
Also aliased as: register_component, register, push
sink_component_class_count()
sink_component_classes()
source_component_class_count()
source_component_classes()
user_component_classes() click to toggle source
# File lib/babeltrace2/plugin/plugin-dev.rb, line 30
def user_component_classes
  @user_component_classes
end
version()
Alias for: get_version