class GDAL::Transformers::ApproximateTransformer

Attributes

c_pointer[R]

@return [FFI::Pointer]

Public Class Methods

function() click to toggle source

@return [FFI::Function]

# File lib/gdal/transformers/approximate_transformer.rb, line 7
def self.function
  FFI::GDAL::Alg::ApproxTransform
end
new(base_transformer, max_error) click to toggle source

@param base_transformer [GDAL::Transformer] @param max_error [Float] The maximum cartesian error in the “output” space

that will be accepted in the linear approximation.
# File lib/gdal/transformers/approximate_transformer.rb, line 24
def initialize(base_transformer, max_error)
  base_transformer_function = base_transformer.function
  transformer_arg_ptr = base_transformer.c_pointer

  pointer = FFI::GDAL::Alg.GDALCreateApproxTransformer(
    base_transformer_function,
    transformer_arg_ptr,
    max_error
  )

  @c_pointer = FFI::AutoPointer.new(pointer, ApproximateTransformer.method(:destroy))
end
release(pointer) click to toggle source

@param pointer [FFI::Pointer]

# File lib/gdal/transformers/approximate_transformer.rb, line 12
def self.release(pointer)
  return unless pointer && !pointer.null?

  FFI::GDAL::Alg.GDALDestroyApproxTransformer(pointer)
end

Public Instance Methods

destroy!() click to toggle source
# File lib/gdal/transformers/approximate_transformer.rb, line 37
def destroy!
  ApproximateTransformer.destroy(@c_pointer)

  @c_pointer = nil
end
function() click to toggle source

@return [FFI::Function]

# File lib/gdal/transformers/approximate_transformer.rb, line 44
def function
  self.class.function
end
owns_subtransformer(data, own_flag) click to toggle source

@param data [FFI::Pointer] Pointer to the data that is passed to

#function.

@param own_flag [Boolean]

# File lib/gdal/transformers/approximate_transformer.rb, line 51
def owns_subtransformer(data, own_flag)
  FFI::GDAL::Alg.GDALApproxTransformerOwnsSubtransformer(data, own_flag)
end