Method: Proj::Operation.list

Defined in:
lib/operation.rb

.listObject



5
6
7
8
9
10
11
12
13
14
15
16
# File 'lib/operation.rb', line 5

def self.list
  pointer_to_array = FFI::Pointer.new(Api::PJ_OPERATIONS, Api.proj_list_operations)
  result = Array.new
  0.step do |i|
    operation_info = Api::PJ_OPERATIONS.new(pointer_to_array[i])
    break result if operation_info[:id].nil?
    id = operation_info[:id]
    description = operation_info[:descr].read_pointer.read_string.force_encoding('UTF-8')
    result << self.new(id, description)
  end
  result
end