Class: GPhoto2::CameraAbilities

Inherits:
Object
  • Object
show all
Includes:
FFI::GPhoto2, Struct
Defined in:
lib/gphoto2/camera_abilities.rb

Constant Summary

Constants included from FFI::GPhoto2

FFI::GPhoto2::CameraCaptureType, FFI::GPhoto2::CameraDriverStatus, FFI::GPhoto2::CameraEventType, FFI::GPhoto2::CameraFileAccessType, FFI::GPhoto2::CameraFileInfoFields, FFI::GPhoto2::CameraFileOperation, FFI::GPhoto2::CameraFilePermissions, FFI::GPhoto2::CameraFileStatus, FFI::GPhoto2::CameraFileType, FFI::GPhoto2::CameraFolderOperation, FFI::GPhoto2::CameraOperation, FFI::GPhoto2::CameraWidgetType, FFI::GPhoto2::GphotoDeviceType

Instance Attribute Summary

Attributes included from Struct

#ptr

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Struct

#to_ptr

Constructor Details

#initialize(camera_abilities_list, index) ⇒ CameraAbilities

Returns a new instance of CameraAbilities.

Parameters:



22
23
24
25
26
# File 'lib/gphoto2/camera_abilities.rb', line 22

def initialize(camera_abilities_list, index)
  @camera_abilities_list = camera_abilities_list
  @index = index
  get_abilities
end

Class Method Details

.find(model) ⇒ GPhoto2::CameraAbilities

Parameters:

  • model (String)

    the name of the device

Returns:



8
9
10
11
12
13
14
15
16
17
18
# File 'lib/gphoto2/camera_abilities.rb', line 8

def self.find(model)
  context = Context.new

  camera_abilities_list = CameraAbilitiesList.new(context)
  index = camera_abilities_list.lookup_model(model)
  abilities = camera_abilities_list[index]

  context.finalize

  abilities
end

Instance Method Details

#[](field) ⇒ Object

Returns:

  • (Object)


29
30
31
# File 'lib/gphoto2/camera_abilities.rb', line 29

def [](field)
  ptr[field]
end

#operationsInteger

Returns a bit field of supported operations.

Returns:

  • (Integer)

    a bit field of supported operations



34
35
36
37
38
39
40
# File 'lib/gphoto2/camera_abilities.rb', line 34

def operations
  if self[:operations] == :none
    CameraOperation[:none]
  else
    self[:operations]
  end
end