class MetaCL::Templates::ExpressionApplicatorWrapper

Attributes

code[R]
counter[R]
kernel_params[R]
m_from[R]
m_to[R]
n_from[R]
n_to[R]

Public Instance Methods

gen_kernel_params() click to toggle source
# File lib/metacl/templates/expression_applicator_wrapper.rb, line 22
def gen_kernel_params
  params = []
  @objects.each do |x|
    case x.klass
      when :matrix, :array
        params << "buffer_#{x.name}"
      when :numeric
        # TODO
    end
  end

  params << "buffer_#{@result_object.name}"
  @kernel_params = params.join(', ')
end
render(from_border, to_border, code, objects, result_object, counter, platform) click to toggle source
Calls superclass method
# File lib/metacl/templates/expression_applicator_wrapper.rb, line 7
def render(from_border, to_border, code, objects, result_object, counter, platform)
  @n_from, @m_from  = from_border
  @n_to, @m_to      = to_border
  @objects          = objects
  @result_object    = result_object
  @code             = Utils.tab_text(code, platform == :cl ? 1 : 2)
  @counter          = counter

  if platform == :cl
    gen_kernel_params
  end

  super IO.read("#{__dir__}/expression_applicator_wrapper.#{platform}.template")
end