Sha256: 5b0d9c71422d56cf62da2dc8201349a28f9a122f362dbee344461c3ada5db50a

Contents?: true

Size: 901 Bytes

Versions: 2

Compression:

Stored size: 901 Bytes

Contents

require_relative '../ffi/gdal/rpc_info'
require_relative '../ffi/gdal/alg'
require 'forwardable'

module GDAL
  # @return [FFI::GDAL::RPCInfo]
  attr_reader :c_struct

  # Wrapper for FFI::GDAL::RPCInfo.
  class RPCInfo
    extend Forwardable
    def_delegator :@c_struct, :[]

    # @param struct_or_ptr [FFI::GDAL::RPCInfo, FFI::Pointer]
    def initialize(struct_or_ptr = nil)
      @c_struct = if struct_or_ptr.is_a? FFI::GDAL::RPCInfo
                    struct_or_ptr
                  elsif struct_or_ptr.is_a? FFI::Pointer
                    FFI::GDAL::RPCInfo.new(struct_or_ptr)
                  else
                    FFI::GDAL::RPCInfo.new
                  end
    end

    # @return [FFI::Pointer]
    def c_pointer
      @c_struct.to_ptr
    end

    # @return [Array<String>]
    def to_metadata
      FFI::GDAL::Alg.RPCInfoToMD(@c_struct).read_array_of_string(0)
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
ffi-gdal-1.0.0.beta5 lib/gdal/rpc_info.rb
ffi-gdal-1.0.0.beta4 lib/gdal/rpc_info.rb