virtualbox 0.6.1 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (268) hide show
  1. data/.yardopts +0 -1
  2. data/Rakefile +1 -1
  3. data/VERSION +1 -1
  4. data/lib/virtualbox/abstract_model/attributable.rb +1 -0
  5. data/lib/virtualbox/abstract_model/validatable.rb +133 -10
  6. data/lib/virtualbox/abstract_model.rb +3 -3
  7. data/lib/virtualbox/appliance.rb +5 -2
  8. data/lib/virtualbox/audio_adapter.rb +11 -3
  9. data/lib/virtualbox/bios.rb +10 -4
  10. data/lib/virtualbox/com/abstract_enum.rb +6 -5
  11. data/lib/virtualbox/com/abstract_implementer.rb +4 -2
  12. data/lib/virtualbox/com/abstract_interface.rb +6 -4
  13. data/lib/virtualbox/com/base_interface.rb +38 -0
  14. data/lib/virtualbox/com/ffi/interface.rb +14 -5
  15. data/lib/virtualbox/com/ffi/interfaces.rb +36 -32
  16. data/lib/virtualbox/com/ffi/util.rb +22 -4
  17. data/lib/virtualbox/com/ffi_interface.rb +39 -8
  18. data/lib/virtualbox/com/implementer/base.rb +2 -2
  19. data/lib/virtualbox/com/implementer/ffi.rb +55 -44
  20. data/lib/virtualbox/com/implementer/mscom.rb +2 -4
  21. data/lib/virtualbox/com/interface/3.1.x/appliance.rb +22 -0
  22. data/lib/virtualbox/com/interface/3.1.x/audio_adapter.rb +15 -0
  23. data/lib/virtualbox/com/interface/3.1.x/audio_controller_type.rb +11 -0
  24. data/lib/virtualbox/com/interface/3.1.x/audio_driver_type.rb +11 -0
  25. data/lib/virtualbox/com/interface/3.1.x/bios_boot_menu_mode.rb +11 -0
  26. data/lib/virtualbox/com/interface/3.1.x/bios_settings.rb +21 -0
  27. data/lib/virtualbox/com/interface/3.1.x/clipboard_mode.rb +11 -0
  28. data/lib/virtualbox/com/interface/3.1.x/console.rb +50 -0
  29. data/lib/virtualbox/com/interface/3.1.x/cpu_property_type.rb +11 -0
  30. data/lib/virtualbox/com/interface/3.1.x/device_type.rb +11 -0
  31. data/lib/virtualbox/com/interface/3.1.x/dhcp_server.rb +22 -0
  32. data/lib/virtualbox/com/interface/3.1.x/firmware_type.rb +11 -0
  33. data/lib/virtualbox/com/interface/3.1.x/guest_os_type.rb +23 -0
  34. data/lib/virtualbox/com/interface/3.1.x/host.rb +42 -0
  35. data/lib/virtualbox/com/interface/3.1.x/host_network_interface.rb +30 -0
  36. data/lib/virtualbox/com/interface/3.1.x/host_network_interface_medium_type.rb +11 -0
  37. data/lib/virtualbox/com/interface/3.1.x/host_network_interface_status.rb +11 -0
  38. data/lib/virtualbox/com/interface/3.1.x/host_network_interface_type.rb +11 -0
  39. data/lib/virtualbox/com/interface/3.1.x/host_usb_device.rb +13 -0
  40. data/lib/virtualbox/com/interface/3.1.x/host_usb_device_filter.rb +13 -0
  41. data/lib/virtualbox/com/interface/3.1.x/hw_virt_ex_property_type.rb +11 -0
  42. data/lib/virtualbox/com/interface/3.1.x/machine.rb +105 -0
  43. data/lib/virtualbox/com/interface/3.1.x/machine_state.rb +14 -0
  44. data/lib/virtualbox/com/interface/3.1.x/medium.rb +50 -0
  45. data/lib/virtualbox/com/interface/3.1.x/medium_attachment.rb +18 -0
  46. data/lib/virtualbox/com/interface/3.1.x/medium_format.rb +18 -0
  47. data/lib/virtualbox/com/interface/3.1.x/medium_state.rb +11 -0
  48. data/lib/virtualbox/com/interface/3.1.x/medium_type.rb +11 -0
  49. data/lib/virtualbox/com/interface/3.1.x/medium_variant.rb +11 -0
  50. data/lib/virtualbox/com/interface/3.1.x/network_adapter.rb +30 -0
  51. data/lib/virtualbox/com/interface/3.1.x/network_adapter_type.rb +11 -0
  52. data/lib/virtualbox/com/interface/3.1.x/network_attachment_type.rb +11 -0
  53. data/lib/virtualbox/com/interface/3.1.x/nsiexception.rb +23 -0
  54. data/lib/virtualbox/com/interface/3.1.x/nsisupports.rb +15 -0
  55. data/lib/virtualbox/com/interface/3.1.x/parallel_port.rb +17 -0
  56. data/lib/virtualbox/com/interface/3.1.x/port_mode.rb +11 -0
  57. data/lib/virtualbox/com/interface/3.1.x/progress.rb +63 -0
  58. data/lib/virtualbox/com/interface/3.1.x/serial_port.rb +19 -0
  59. data/lib/virtualbox/com/interface/3.1.x/session.rb +18 -0
  60. data/lib/virtualbox/com/interface/3.1.x/session_state.rb +11 -0
  61. data/lib/virtualbox/com/interface/3.1.x/session_type.rb +11 -0
  62. data/lib/virtualbox/com/interface/3.1.x/shared_folder.rb +17 -0
  63. data/lib/virtualbox/com/interface/3.1.x/snapshot.rb +20 -0
  64. data/lib/virtualbox/com/interface/3.1.x/storage_bus.rb +11 -0
  65. data/lib/virtualbox/com/interface/3.1.x/storage_controller.rb +23 -0
  66. data/lib/virtualbox/com/interface/3.1.x/storage_controller_type.rb +11 -0
  67. data/lib/virtualbox/com/interface/3.1.x/system_properties.rb +37 -0
  68. data/lib/virtualbox/com/interface/3.1.x/usb_controller.rb +20 -0
  69. data/lib/virtualbox/com/interface/3.1.x/usb_device.rb +24 -0
  70. data/lib/virtualbox/com/interface/3.1.x/usb_device_filter.rb +23 -0
  71. data/lib/virtualbox/com/interface/3.1.x/usb_device_filter_action.rb +11 -0
  72. data/lib/virtualbox/com/interface/3.1.x/usb_device_state.rb +11 -0
  73. data/lib/virtualbox/com/interface/3.1.x/virtual_box_error_info.rb +17 -0
  74. data/lib/virtualbox/com/interface/3.1.x/virtual_system_description.rb +19 -0
  75. data/lib/virtualbox/com/interface/3.1.x/virtual_system_description_type.rb +14 -0
  76. data/lib/virtualbox/com/interface/3.1.x/virtual_system_description_value_type.rb +11 -0
  77. data/lib/virtualbox/com/interface/3.1.x/virtualbox.rb +67 -0
  78. data/lib/virtualbox/com/interface/3.1.x/vrdp_auth_type.rb +11 -0
  79. data/lib/virtualbox/com/interface/3.1.x/vrdp_server.rb +19 -0
  80. data/lib/virtualbox/com/interface/3.2.x/appliance.rb +22 -0
  81. data/lib/virtualbox/com/interface/3.2.x/audio_adapter.rb +15 -0
  82. data/lib/virtualbox/com/interface/3.2.x/audio_controller_type.rb +11 -0
  83. data/lib/virtualbox/com/interface/3.2.x/audio_driver_type.rb +11 -0
  84. data/lib/virtualbox/com/interface/3.2.x/bios_boot_menu_mode.rb +11 -0
  85. data/lib/virtualbox/com/interface/3.2.x/bios_settings.rb +21 -0
  86. data/lib/virtualbox/com/interface/3.2.x/clipboard_mode.rb +11 -0
  87. data/lib/virtualbox/com/interface/3.2.x/console.rb +50 -0
  88. data/lib/virtualbox/com/interface/3.2.x/cpu_property_type.rb +11 -0
  89. data/lib/virtualbox/com/interface/3.2.x/device_type.rb +11 -0
  90. data/lib/virtualbox/com/interface/3.2.x/dhcp_server.rb +22 -0
  91. data/lib/virtualbox/com/interface/3.2.x/firmware_type.rb +11 -0
  92. data/lib/virtualbox/com/interface/3.2.x/guest.rb +13 -0
  93. data/lib/virtualbox/com/interface/3.2.x/guest_os_type.rb +33 -0
  94. data/lib/virtualbox/com/interface/3.2.x/host.rb +43 -0
  95. data/lib/virtualbox/com/interface/3.2.x/host_network_interface.rb +30 -0
  96. data/lib/virtualbox/com/interface/3.2.x/host_network_interface_medium_type.rb +11 -0
  97. data/lib/virtualbox/com/interface/3.2.x/host_network_interface_status.rb +11 -0
  98. data/lib/virtualbox/com/interface/3.2.x/host_network_interface_type.rb +11 -0
  99. data/lib/virtualbox/com/interface/3.2.x/host_usb_device.rb +13 -0
  100. data/lib/virtualbox/com/interface/3.2.x/host_usb_device_filter.rb +13 -0
  101. data/lib/virtualbox/com/interface/3.2.x/hw_virt_ex_property_type.rb +11 -0
  102. data/lib/virtualbox/com/interface/3.2.x/keyboard_hid_type.rb +11 -0
  103. data/lib/virtualbox/com/interface/3.2.x/machine.rb +118 -0
  104. data/lib/virtualbox/com/interface/3.2.x/machine_state.rb +14 -0
  105. data/lib/virtualbox/com/interface/3.2.x/medium.rb +51 -0
  106. data/lib/virtualbox/com/interface/3.2.x/medium_attachment.rb +18 -0
  107. data/lib/virtualbox/com/interface/3.2.x/medium_format.rb +18 -0
  108. data/lib/virtualbox/com/interface/3.2.x/medium_state.rb +11 -0
  109. data/lib/virtualbox/com/interface/3.2.x/medium_type.rb +11 -0
  110. data/lib/virtualbox/com/interface/3.2.x/medium_variant.rb +11 -0
  111. data/lib/virtualbox/com/interface/3.2.x/nat_alias_mode.rb +11 -0
  112. data/lib/virtualbox/com/interface/3.2.x/nat_engine.rb +27 -0
  113. data/lib/virtualbox/com/interface/3.2.x/nat_protocol.rb +11 -0
  114. data/lib/virtualbox/com/interface/3.2.x/network_adapter.rb +34 -0
  115. data/lib/virtualbox/com/interface/3.2.x/network_adapter_type.rb +11 -0
  116. data/lib/virtualbox/com/interface/3.2.x/network_attachment_type.rb +11 -0
  117. data/lib/virtualbox/com/interface/3.2.x/nsiexception.rb +23 -0
  118. data/lib/virtualbox/com/interface/3.2.x/nsisupports.rb +15 -0
  119. data/lib/virtualbox/com/interface/3.2.x/parallel_port.rb +17 -0
  120. data/lib/virtualbox/com/interface/3.2.x/pointing_hid_type.rb +11 -0
  121. data/lib/virtualbox/com/interface/3.2.x/port_mode.rb +11 -0
  122. data/lib/virtualbox/com/interface/3.2.x/progress.rb +63 -0
  123. data/lib/virtualbox/com/interface/3.2.x/serial_port.rb +19 -0
  124. data/lib/virtualbox/com/interface/3.2.x/session.rb +18 -0
  125. data/lib/virtualbox/com/interface/3.2.x/session_state.rb +11 -0
  126. data/lib/virtualbox/com/interface/3.2.x/session_type.rb +11 -0
  127. data/lib/virtualbox/com/interface/3.2.x/shared_folder.rb +17 -0
  128. data/lib/virtualbox/com/interface/3.2.x/snapshot.rb +20 -0
  129. data/lib/virtualbox/com/interface/3.2.x/storage_bus.rb +11 -0
  130. data/lib/virtualbox/com/interface/3.2.x/storage_controller.rb +24 -0
  131. data/lib/virtualbox/com/interface/3.2.x/storage_controller_type.rb +11 -0
  132. data/lib/virtualbox/com/interface/3.2.x/system_properties.rb +42 -0
  133. data/lib/virtualbox/com/interface/3.2.x/usb_controller.rb +21 -0
  134. data/lib/virtualbox/com/interface/3.2.x/usb_device.rb +24 -0
  135. data/lib/virtualbox/com/interface/3.2.x/usb_device_filter.rb +23 -0
  136. data/lib/virtualbox/com/interface/3.2.x/usb_device_filter_action.rb +11 -0
  137. data/lib/virtualbox/com/interface/3.2.x/usb_device_state.rb +11 -0
  138. data/lib/virtualbox/com/interface/3.2.x/virtual_box_error_info.rb +17 -0
  139. data/lib/virtualbox/com/interface/3.2.x/virtual_system_description.rb +19 -0
  140. data/lib/virtualbox/com/interface/3.2.x/virtual_system_description_type.rb +14 -0
  141. data/lib/virtualbox/com/interface/3.2.x/virtual_system_description_value_type.rb +11 -0
  142. data/lib/virtualbox/com/interface/3.2.x/virtualbox.rb +67 -0
  143. data/lib/virtualbox/com/interface/3.2.x/vrdp_auth_type.rb +11 -0
  144. data/lib/virtualbox/com/interface/3.2.x/vrdp_server.rb +21 -0
  145. data/lib/virtualbox/com/mscom_interface.rb +9 -4
  146. data/lib/virtualbox/com/nil_interface.rb +7 -0
  147. data/lib/virtualbox/com/util.rb +16 -2
  148. data/lib/virtualbox/com.rb +1 -1
  149. data/lib/virtualbox/cpu.rb +61 -0
  150. data/lib/virtualbox/dhcp_server.rb +89 -0
  151. data/lib/virtualbox/dvd.rb +2 -2
  152. data/lib/virtualbox/exceptions.rb +4 -0
  153. data/lib/virtualbox/ext/platform.rb +2 -2
  154. data/lib/virtualbox/extra_data.rb +5 -6
  155. data/lib/virtualbox/forwarded_port.rb +11 -7
  156. data/lib/virtualbox/global.rb +17 -6
  157. data/lib/virtualbox/hard_drive.rb +129 -66
  158. data/lib/virtualbox/host.rb +71 -0
  159. data/lib/virtualbox/host_network_interface.rb +137 -0
  160. data/lib/virtualbox/hw_virtualization.rb +12 -6
  161. data/lib/virtualbox/lib.rb +2 -2
  162. data/lib/virtualbox/media.rb +2 -2
  163. data/lib/virtualbox/medium.rb +10 -3
  164. data/lib/virtualbox/medium_attachment.rb +2 -2
  165. data/lib/virtualbox/network_adapter.rb +12 -4
  166. data/lib/virtualbox/proxies/collection.rb +26 -6
  167. data/lib/virtualbox/shared_folder.rb +22 -15
  168. data/lib/virtualbox/snapshot.rb +185 -0
  169. data/lib/virtualbox/storage_controller.rb +3 -3
  170. data/lib/virtualbox/system_properties.rb +1 -1
  171. data/lib/virtualbox/usb_controller.rb +8 -4
  172. data/lib/virtualbox/usb_device_filter.rb +74 -0
  173. data/lib/virtualbox/version.rb +12 -1
  174. data/lib/virtualbox/virtual_system_description.rb +4 -4
  175. data/lib/virtualbox/vm.rb +273 -64
  176. data/lib/virtualbox/vrdp_server.rb +59 -0
  177. data/test/test_helper.rb +7 -1
  178. data/test/virtualbox/abstract_model/attributable_test.rb +8 -0
  179. data/test/virtualbox/abstract_model/relatable_test.rb +5 -5
  180. data/test/virtualbox/abstract_model/validatable_test.rb +186 -3
  181. data/test/virtualbox/abstract_model_test.rb +3 -3
  182. data/test/virtualbox/appliance_test.rb +8 -1
  183. data/test/virtualbox/com/abstract_enum_test.rb +1 -0
  184. data/test/virtualbox/com/abstract_implementer_test.rb +4 -3
  185. data/test/virtualbox/com/abstract_interface_test.rb +3 -2
  186. data/test/virtualbox/com/ffi/interface_test.rb +4 -4
  187. data/test/virtualbox/com/ffi/util_test.rb +23 -1
  188. data/test/virtualbox/com/implementer/base_test.rb +4 -3
  189. data/test/virtualbox/com/implementer/ffi_test.rb +18 -10
  190. data/test/virtualbox/cpu_test.rb +103 -0
  191. data/test/virtualbox/dhcp_server_test.rb +165 -0
  192. data/test/virtualbox/extra_data_test.rb +4 -3
  193. data/test/virtualbox/forwarded_port_test.rb +17 -4
  194. data/test/virtualbox/hard_drive_test.rb +54 -5
  195. data/test/virtualbox/host_network_interface_test.rb +254 -0
  196. data/test/virtualbox/host_test.rb +94 -0
  197. data/test/virtualbox/network_adapter_test.rb +30 -1
  198. data/test/virtualbox/proxies/collection_test.rb +63 -21
  199. data/test/virtualbox/shared_folder_test.rb +16 -13
  200. data/test/virtualbox/snapshot_test.rb +231 -0
  201. data/test/virtualbox/storage_controller_test.rb +1 -1
  202. data/test/virtualbox/usb_controller_test.rb +7 -0
  203. data/test/virtualbox/usb_device_filter_test.rb +93 -0
  204. data/test/virtualbox/version_test.rb +13 -1
  205. data/test/virtualbox/vm_test.rb +245 -11
  206. data/test/virtualbox/vrdp_server_test.rb +83 -0
  207. data/virtualbox.gemspec +183 -97
  208. metadata +182 -96
  209. data/TODO +0 -9
  210. data/lib/virtualbox/com/interface/appliance.rb +0 -20
  211. data/lib/virtualbox/com/interface/audio_adapter.rb +0 -13
  212. data/lib/virtualbox/com/interface/audio_controller_type.rb +0 -9
  213. data/lib/virtualbox/com/interface/audio_driver_type.rb +0 -9
  214. data/lib/virtualbox/com/interface/bios_boot_menu_mode.rb +0 -9
  215. data/lib/virtualbox/com/interface/bios_settings.rb +0 -19
  216. data/lib/virtualbox/com/interface/clipboard_mode.rb +0 -9
  217. data/lib/virtualbox/com/interface/console.rb +0 -48
  218. data/lib/virtualbox/com/interface/cpu_property_type.rb +0 -9
  219. data/lib/virtualbox/com/interface/device_type.rb +0 -9
  220. data/lib/virtualbox/com/interface/dhcp_server.rb +0 -20
  221. data/lib/virtualbox/com/interface/firmware_type.rb +0 -9
  222. data/lib/virtualbox/com/interface/guest_os_type.rb +0 -21
  223. data/lib/virtualbox/com/interface/host.rb +0 -40
  224. data/lib/virtualbox/com/interface/host_network_interface.rb +0 -28
  225. data/lib/virtualbox/com/interface/host_network_interface_medium_type.rb +0 -9
  226. data/lib/virtualbox/com/interface/host_network_interface_status.rb +0 -9
  227. data/lib/virtualbox/com/interface/host_network_interface_type.rb +0 -9
  228. data/lib/virtualbox/com/interface/host_usb_device.rb +0 -11
  229. data/lib/virtualbox/com/interface/host_usb_device_filter.rb +0 -11
  230. data/lib/virtualbox/com/interface/hw_virt_ex_property_type.rb +0 -9
  231. data/lib/virtualbox/com/interface/machine.rb +0 -103
  232. data/lib/virtualbox/com/interface/machine_state.rb +0 -12
  233. data/lib/virtualbox/com/interface/medium.rb +0 -48
  234. data/lib/virtualbox/com/interface/medium_attachment.rb +0 -16
  235. data/lib/virtualbox/com/interface/medium_format.rb +0 -16
  236. data/lib/virtualbox/com/interface/medium_state.rb +0 -9
  237. data/lib/virtualbox/com/interface/medium_type.rb +0 -9
  238. data/lib/virtualbox/com/interface/medium_variant.rb +0 -9
  239. data/lib/virtualbox/com/interface/network_adapter.rb +0 -28
  240. data/lib/virtualbox/com/interface/network_adapter_type.rb +0 -9
  241. data/lib/virtualbox/com/interface/network_attachment_type.rb +0 -9
  242. data/lib/virtualbox/com/interface/nsiexception.rb +0 -21
  243. data/lib/virtualbox/com/interface/nsisupports.rb +0 -13
  244. data/lib/virtualbox/com/interface/parallel_port.rb +0 -15
  245. data/lib/virtualbox/com/interface/port_mode.rb +0 -9
  246. data/lib/virtualbox/com/interface/progress.rb +0 -58
  247. data/lib/virtualbox/com/interface/serial_port.rb +0 -17
  248. data/lib/virtualbox/com/interface/session.rb +0 -16
  249. data/lib/virtualbox/com/interface/session_state.rb +0 -9
  250. data/lib/virtualbox/com/interface/session_type.rb +0 -9
  251. data/lib/virtualbox/com/interface/shared_folder.rb +0 -15
  252. data/lib/virtualbox/com/interface/snapshot.rb +0 -18
  253. data/lib/virtualbox/com/interface/storage_bus.rb +0 -9
  254. data/lib/virtualbox/com/interface/storage_controller.rb +0 -21
  255. data/lib/virtualbox/com/interface/storage_controller_type.rb +0 -9
  256. data/lib/virtualbox/com/interface/system_properties.rb +0 -35
  257. data/lib/virtualbox/com/interface/usb_controller.rb +0 -18
  258. data/lib/virtualbox/com/interface/usb_device.rb +0 -22
  259. data/lib/virtualbox/com/interface/usb_device_filter.rb +0 -21
  260. data/lib/virtualbox/com/interface/usb_device_filter_action.rb +0 -9
  261. data/lib/virtualbox/com/interface/usb_device_state.rb +0 -9
  262. data/lib/virtualbox/com/interface/virtual_box_error_info.rb +0 -15
  263. data/lib/virtualbox/com/interface/virtual_system_description.rb +0 -17
  264. data/lib/virtualbox/com/interface/virtual_system_description_type.rb +0 -12
  265. data/lib/virtualbox/com/interface/virtual_system_description_value_type.rb +0 -9
  266. data/lib/virtualbox/com/interface/virtualbox.rb +0 -54
  267. data/lib/virtualbox/com/interface/vrdp_auth_type.rb +0 -9
  268. data/lib/virtualbox/com/interface/vrdp_server.rb +0 -17
@@ -1,40 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class Host < AbstractInterface
5
- IID_STR = "e380cbfc-ae65-4fa6-899e-45ded6b3132a"
6
-
7
- property :dvd_drives, [:Medium], :readonly => true
8
- property :floppy_drives, [:Medium], :readonly => true
9
- property :usb_devices, [:HostUSBDevice], :readonly => true
10
- property :usb_device_filters, [:HostUSBDeviceFilter], :readonly => true
11
- property :network_interfaces, [:HostNetworkInterface], :readonly => true
12
- property :processor_count, T_ULONG, :readonly => true
13
- property :processor_online_count, T_ULONG, :readonly => true
14
- property :memory_size, T_ULONG, :readonly => true
15
- property :memory_available, T_ULONG, :readonly => true
16
- property :operating_system, WSTRING, :readonly => true
17
- property :os_version, WSTRING, :readonly => true
18
- property :utc_time, T_INT64, :readonly => true
19
- property :acceleration_3d_available, T_BOOL, :readonly => true
20
-
21
- function :get_processor_speed, T_ULONG, [T_UINT32]
22
- function :get_processor_feature, T_BOOL, [T_UINT32] # TODO ENUM
23
- function :get_processor_description, WSTRING, [T_UINT32]
24
- function :get_processor_cpu_id_leaf, nil, [T_UINT32, T_UINT32, T_UINT32, [:out, T_UINT32], [:out, T_UINT32], [:out, T_UINT32], [:out, T_UINT32]]
25
- function :create_host_only_network_interface, :Progress, [[:out, :HostNetworkInterface]]
26
- function :remove_host_only_network_interface, :Progress, [WSTRING]
27
- function :create_usb_device_filter, :HostUSBDeviceFilter, [WSTRING]
28
- function :insert_usb_device_filter, nil, [T_UINT32, :HostUSBDeviceFilter]
29
- function :remove_usb_device_filter, nil, [T_UINT32]
30
- function :find_host_dvd_drive, :Medium, [WSTRING]
31
- function :find_host_floppy_drive, :Medium, [WSTRING]
32
- function :find_host_network_interface_by_name, :HostNetworkInterface, [WSTRING]
33
- function :find_host_network_interface_by_id, :HostNetworkInterface, [WSTRING]
34
- function :find_host_network_interfaces_of_type, [:HostNetworkInterface], [:HostNetworkInterfaceType]
35
- function :find_usb_device_by_id, :HostUSBDevice, [WSTRING]
36
- function :find_usb_device_by_address, :HostUSBDevice, [WSTRING]
37
- end
38
- end
39
- end
40
- end
@@ -1,28 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class HostNetworkInterface < AbstractInterface
5
- IID = "ce6fae58-7642-4102-b5db-c9005c2320a8"
6
-
7
- property :name, WSTRING, :readonly => true
8
- property :id, WSTRING, :readonly => true
9
- property :network_name, WSTRING, :readonly => true
10
- property :dhcp_enabled, T_BOOL, :readonly => true
11
- property :ip_address, WSTRING, :readonly => true
12
- property :network_mask, WSTRING, :readonly => true
13
- property :ip_v6_supported, T_BOOL, :readonly => true
14
- property :ip_v6_address, WSTRING, :readonly => true
15
- property :ip_v6_network_mask_prefix_length, T_UINT32, :readonly => true
16
- property :hardware_address, WSTRING, :readonly => true
17
- property :medium_type, :HostNetworkInterfaceMediumType, :readonly => true
18
- property :status, :HostNetworkInterfaceStatus, :readonly => true
19
- property :interface_type, :HostNetworkInterfaceType, :readonly => true
20
-
21
- function :enable_static_ip_config, nil, [WSTRING, WSTRING]
22
- function :enable_static_ip_config_v6, nil, [WSTRING, T_UINT32]
23
- function :enable_dynamic_ip_config, nil, []
24
- function :dhcp_rediscover, nil, []
25
- end
26
- end
27
- end
28
- end
@@ -1,9 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class HostNetworkInterfaceMediumType < AbstractEnum
5
- map [:unknown, :ethernet, :ppp, :slip]
6
- end
7
- end
8
- end
9
- end
@@ -1,9 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class HostNetworkInterfaceStatus < AbstractEnum
5
- map [:unknown, :up, :down]
6
- end
7
- end
8
- end
9
- end
@@ -1,9 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class HostNetworkInterfaceType < AbstractEnum
5
- map [:bridged, :host_only]
6
- end
7
- end
8
- end
9
- end
@@ -1,11 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class HostUSBDevice < AbstractInterface
5
- IID = "173b4b44-d268-4334-a00d-b6521c9a740a"
6
-
7
- property :state, :USBDeviceState, :readonly => true
8
- end
9
- end
10
- end
11
- end
@@ -1,11 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class HostUSBDeviceFilter < AbstractInterface
5
- IID = "4cc70246-d74a-400f-8222-3900489c0374"
6
-
7
- property :action, :USBDeviceFilterAction
8
- end
9
- end
10
- end
11
- end
@@ -1,9 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class HWVirtExPropertyType < AbstractEnum
5
- map [:null, :enabled, :exclusive, :vpid, :nested_paging]
6
- end
7
- end
8
- end
9
- end
@@ -1,103 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class Machine < AbstractInterface
5
- IID_STR = "99404f50-dd10-40d3-889b-dd2f79f1e95e"
6
-
7
- property :parent, :VirtualBox, :readonly => true
8
- property :accessible, T_BOOL, :readonly => true
9
- property :access_error, :VirtualBoxErrorInfo, :readonly => true
10
- property :name, WSTRING
11
- property :description, WSTRING
12
- property :id, WSTRING, :readonly => true
13
- property :os_type_id, WSTRING
14
- property :hardware_version, WSTRING
15
- property :hardware_uuid, WSTRING
16
- property :cpu_count, T_UINT32
17
- property :memory_size, T_UINT32
18
- property :memory_balloon_size, T_UINT32
19
- property :statistics_update_interval, T_UINT32
20
- property :vram_size, T_UINT32
21
- property :accelerate_3d_enabled, T_BOOL
22
- property :accelerate_2d_video_enabled, T_BOOL
23
- property :monitor_count, T_UINT32
24
- property :bios_settings, :BIOSSettings, :readonly => true
25
- property :firmware_type, :FirmwareType
26
- property :snapshot_folder, WSTRING
27
- property :vrdp_server, :VRDPServer, :readonly => true
28
- property :medium_attachments, [:MediumAttachment], :readonly => true
29
- property :usb_controller, :USBController, :readonly => true
30
- property :audio_adapter, :AudioAdapter, :readonly => true
31
- property :storage_controllers, [:StorageController], :readonly => true
32
- property :settings_file_path, WSTRING, :readonly => true
33
- property :settings_modified, T_BOOL, :readonly => true
34
- property :session_state, :SessionState, :readonly => true
35
- property :session_type, WSTRING, :readonly => true
36
- property :session_pid, T_UINT32, :readonly => true
37
- property :state, :MachineState, :readonly => true
38
- property :last_state_change, T_INT64, :readonly => true
39
- property :state_file_path, WSTRING, :readonly => true
40
- property :log_folder, WSTRING, :readonly => true
41
- property :current_snapshot, :Snapshot, :readonly => true
42
- property :snapshot_count, T_UINT32, :readonly => true
43
- property :current_state_modified, T_BOOL, :readonly => true
44
- property :shared_folders, [:SharedFolder], :readonly => true
45
- property :clipboard_mode, :ClipboardMode
46
- property :guest_property_notification_patterns, WSTRING
47
- property :teleporter_enabled, T_BOOL
48
- property :teleporter_port, T_UINT32
49
- property :teleporter_address, WSTRING
50
- property :teleporter_password, WSTRING
51
-
52
- function :set_boot_order, nil, [T_UINT32, :DeviceType]
53
- function :get_boot_order, :DeviceType, [T_UINT32]
54
- function :attach_device, nil, [WSTRING, T_INT32, T_INT32, :DeviceType, WSTRING]
55
- function :detach_device, nil, [WSTRING, T_INT32, T_INT32]
56
- function :passthrough_device, nil, [WSTRING, T_INT32, T_INT32, T_BOOL]
57
- function :mount_medium, nil, [WSTRING, T_INT32, T_INT32, WSTRING, T_BOOL]
58
- function :get_medium, :Medium, [WSTRING, T_INT32, T_INT32]
59
- function :get_medium_attachments_of_controller, [:MediumAttachments], [WSTRING]
60
- function :get_medium_attachment, :MediumAttachment, [WSTRING, T_INT32, T_INT32]
61
- function :get_network_adapter, :NetworkAdapter, [T_UINT32]
62
- function :add_storage_controller, :StorageController, [WSTRING, T_UINT32]
63
- function :get_storage_controller_by_name, :StorageController, [WSTRING]
64
- function :get_storage_controller_by_instance, :StorageController, [T_UINT32]
65
- function :remove_storage_controller, nil, [WSTRING]
66
- function :get_serial_port, :SerialPort, [T_UINT32]
67
- function :get_parallel_port, :ParallelPort, [T_UINT32]
68
- function :get_extra_data_keys, [WSTRING], []
69
- function :get_extra_data, WSTRING, [WSTRING]
70
- function :set_extra_data, nil, [WSTRING, WSTRING]
71
- function :get_cpu_property, T_BOOL, [:CpuPropertyType]
72
- function :set_cpu_property, nil, [:CpuPropertyType, T_BOOL]
73
- function :get_cpu_id_leaf, nil, [T_UINT32, [:out, T_UINT32], [:out, T_UINT32], [:out, T_UINT32], [:out, T_UINT32]]
74
- function :set_cpu_id_leaf, nil, [T_UINT32, T_UINT32, T_UINT32, T_UINT32, T_UINT32]
75
- function :remove_cpu_id_leaf, nil, [T_UINT32]
76
- function :remove_all_cpu_id_leafs, nil, []
77
- function :get_hw_virt_ex_property, T_BOOL, [:HWVirtExPropertyType]
78
- function :set_hw_virt_ex_property, T_BOOL, [:HWVirtExPropertyType]
79
- function :save_settings, nil, []
80
- function :discard_settings, nil, []
81
- function :delete_settings, nil, []
82
- function :export, :VirtualSystemDescription, [:Appliance]
83
- function :get_snapshot, :Snapshot, [WSTRING]
84
- function :find_snapshot, :Snapshot, [WSTRING]
85
- function :set_current_snapshot, nil, [WSTRING]
86
- function :create_shared_folder, nil, [WSTRING, WSTRING, T_BOOL]
87
- function :remove_shared_folder, nil, [WSTRING]
88
- function :can_show_console_window, T_BOOL, []
89
- function :show_console_window, T_UINT64, []
90
- function :get_guest_property, nil, [WSTRING, [:out, WSTRING], [:out, T_UINT64], [:out, WSTRING]]
91
- function :get_guest_property_value, WSTRING, [WSTRING]
92
- function :get_guest_property_timestamp, T_UINT64, [WSTRING]
93
- function :set_guest_property, nil, [WSTRING, WSTRING, WSTRING]
94
- function :set_guest_propetty_value, nil, [WSTRING, WSTRING]
95
- function :enumerate_guest_properties, nil, [WSTRING, [:out, [WSTRING]], [:out, [WSTRING]], [:out, [T_UINT64]], [:out, [WSTRING]]]
96
- function :query_saved_thumbnail_size, nil, [[:out, T_UINT32], [:out, T_UINT32], [:out, T_UINT32]]
97
- function :read_saved_thumbnail_to_array, [T_UINT8], [T_BOOL, [:out, T_UINT32], [:out, T_UINT32]]
98
- function :query_saved_screenshot_png_size, nil, [[:out, T_UINT32], [:out, T_UINT32], [:out, T_UINT32]]
99
- function :read_saved_png_screenshot_to_array, [T_UINT8], [[:out, T_UINT32], [:out, T_UINT32]]
100
- end
101
- end
102
- end
103
- end
@@ -1,12 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class MachineState < AbstractEnum
5
- map [:null, :powered_off, :saved, :teleported, :aborted, :running, :paused, :stuck,
6
- :teleporting, :live_snapshotting, :starting, :stopping, :saving, :restoring,
7
- :teleporting_paused_vm, :teleporting_in, :restoring_snapshot, :deleting_snapshot,
8
- :setting_up]
9
- end
10
- end
11
- end
12
- end
@@ -1,48 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class Medium < AbstractInterface
5
- IID = "aa8167ba-df72-4738-b740-9b84377ba9f1"
6
-
7
- property :id, WSTRING, :readonly => true
8
- property :description, WSTRING
9
- property :state, :MediumState, :readonly => true
10
- property :location, WSTRING
11
- property :name, WSTRING, :readonly => true
12
- property :device_type, :DeviceType, :readonly => true
13
- property :host_drive, T_BOOL, :readonly => true
14
- property :size, T_UINT64, :readonly => true
15
- property :format, WSTRING, :readonly => true
16
- property :type, :MediumType
17
- property :parent, :Medium, :readonly => true
18
- property :children, [:Medium], :readonly => true
19
- property :base, :Medium, :readonly => true
20
- property :read_only, T_BOOL, :readonly => true
21
- property :logical_size, T_UINT64, :readonly => true
22
- property :auto_reset, T_BOOL
23
- property :last_access_error, WSTRING, :readonly => true
24
- property :machine_ids, [WSTRING], :readonly => true
25
-
26
- function :refresh_state, :MediumState, []
27
- function :get_snapshot_ids, [WSTRING], [WSTRING]
28
- function :lock_read, :MediumState, []
29
- function :unlock_read, :MediumState, []
30
- function :lock_write, :MediumState, []
31
- function :unlock_write, :MediumState, []
32
- function :close, nil, []
33
- function :get_property, WSTRING, [WSTRING]
34
- function :set_property, nil, [WSTRING, WSTRING]
35
- function :get_properties, [WSTRING], [WSTRING, [:out, [WSTRING]]]
36
- function :set_properties, nil, [[WSTRING], [WSTRING]]
37
- function :create_base_storage, :Progress, [T_UINT64, :MediumVariant]
38
- function :delete_storage, :Progress, []
39
- function :create_diff_storage, :Progress, [:Medium, :MediumVariant]
40
- function :merge_to, :Progress, [WSTRING]
41
- function :clone_to, :Progress, [:Medium, :MediumVariant, :Medium]
42
- function :compact, :Progress, []
43
- function :resize, :Progress, [T_UINT64]
44
- function :reset, :Progress, []
45
- end
46
- end
47
- end
48
- end
@@ -1,16 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class MediumAttachment < AbstractInterface
5
- IID = "e58eb3eb-8627-428b-bdf8-34487c848de5"
6
-
7
- property :medium, :Medium, :readonly => true
8
- property :controller, WSTRING, :readonly => true
9
- property :port, T_INT32, :readonly => true
10
- property :device, T_INT32, :readonly => true
11
- property :type, :DeviceType, :readonly => true
12
- property :passthrough, T_BOOL, :readonly => true
13
- end
14
- end
15
- end
16
- end
@@ -1,16 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class MediumFormat < AbstractInterface
5
- IID = "89f52554-d469-4799-9fad-1705e86a08b1"
6
-
7
- property :id, WSTRING, :readonly => true
8
- property :name, WSTRING, :readonly => true
9
- property :file_extensions, [WSTRING], :readonly => true
10
- property :capabilities, T_UINT32, :readonly => true
11
-
12
- function :describe_properties, nil, [[:out, [WSTRING]], [:out, [WSTRING]], [:out, [:DataType]], [:out, [T_UINT32]], [:out, [WSTRING]]]
13
- end
14
- end
15
- end
16
- end
@@ -1,9 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class MediumState < AbstractEnum
5
- map [:not_created, :created, :locked_read, :locked_write, :inaccessible, :creating, :deleting]
6
- end
7
- end
8
- end
9
- end
@@ -1,9 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class MediumType < AbstractEnum
5
- map [:normal, :immutable, :write_through]
6
- end
7
- end
8
- end
9
- end
@@ -1,9 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class MediumVariant < AbstractEnum
5
- map [:standard, :vmdk_split_2g, :vmdk_stream_optimized, :vmdk_esx, :fixed, :diff]
6
- end
7
- end
8
- end
9
- end
@@ -1,28 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class NetworkAdapter < AbstractInterface
5
- IID = "65607a27-2b73-4d43-b4cc-0ba2c817fbde"
6
-
7
- property :adapter_type, :NetworkAdapterType
8
- property :slot, T_UINT32, :readonly => true
9
- property :enabled, T_BOOL
10
- property :mac_address, WSTRING
11
- property :attachment_type, :NetworkAttachmentType, :readonly => true
12
- property :host_interface, WSTRING
13
- property :internal_network, WSTRING
14
- property :nat_network, WSTRING
15
- property :cable_connected, T_BOOL
16
- property :line_speed, T_UINT32
17
- property :trace_enabled, T_BOOL
18
- property :trace_file, WSTRING
19
-
20
- function :attach_to_nat, nil, []
21
- function :attach_to_bridged_interface, nil, []
22
- function :attach_to_internal_network, nil, []
23
- function :attach_to_host_only_interface, nil, []
24
- function :detach, nil, []
25
- end
26
- end
27
- end
28
- end
@@ -1,9 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class NetworkAdapterType < AbstractEnum
5
- map [:null, :Am79C970A, :Am79C973, :I82540EM, :I82543GC, :I82545EM, :Virtio]
6
- end
7
- end
8
- end
9
- end
@@ -1,9 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class NetworkAttachmentType < AbstractEnum
5
- map [:null, :nat, :bridged, :internal, :host_only]
6
- end
7
- end
8
- end
9
- end
@@ -1,21 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class NSIException < AbstractInterface
5
- IID = "f3a8d3b4-c424-4edc-8bf6-8974c983ba78"
6
-
7
- property :message, WSTRING, :readonly => true
8
- property :result, T_UINT32, :readonly => true
9
- property :name, WSTRING, :readonly => true
10
- property :filename, WSTRING, :readonly => true
11
- property :line_number, T_UINT32, :readonly => true
12
- property :column_number, T_UINT32, :readonly => true
13
- property :location, :NSIStackFrame, :readonly => true
14
- property :inner, :NSIException, :readonly => true
15
- property :data, :NSISupports, :readonly => true
16
-
17
- function :to_string, WSTRING, []
18
- end
19
- end
20
- end
21
- end
@@ -1,13 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- # This interface is actually only used with the FFI implementer but
5
- # is created here to allow easier usage with the FFI abstractions.
6
- class NSISupports < AbstractInterface
7
- function :QueryInterface, :pointer, [:pointer]
8
- function :AddRef, nil, []
9
- function :Release, nil, []
10
- end
11
- end
12
- end
13
- end
@@ -1,15 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class ParallelPort < AbstractInterface
5
- IID = "0c925f06-dd10-4b77-8de8-294d738c3214"
6
-
7
- property :slot, T_UINT32, :readonly => true
8
- property :enabled, T_BOOL
9
- property :io_base, T_UINT32
10
- property :irq, T_UINT32
11
- property :path, WSTRING
12
- end
13
- end
14
- end
15
- end
@@ -1,9 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class PortMode < AbstractEnum
5
- map [:disconnected, :host_pipe, :host_device, :raw_file]
6
- end
7
- end
8
- end
9
- end
@@ -1,58 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class Progress < AbstractInterface
5
- IID = "856aa038-853f-42e2-acf7-6e7b02dbe294"
6
-
7
- property :id, WSTRING, :readonly => true
8
- property :description, WSTRING, :readonly => true
9
- property :initiator, :NSISupports, :readonly => true
10
- property :cancelable, T_BOOL, :readonly => true
11
- property :percent, T_UINT32, :readonly => true
12
- property :time_remaining, T_INT32, :readonly => true
13
- property :completed, T_BOOL, :readonly => true
14
- property :canceled, T_BOOL, :readonly => true
15
- property :result_code, T_INT32, :readonly => true
16
- property :error_info, :VirtualBoxErrorInfo, :readonly => true
17
- property :operation_count, T_UINT32, :readonly => true
18
- property :operation, T_UINT32, :readonly => true
19
- property :operation_description, WSTRING, :readonly => true
20
- property :operation_percent, T_UINT32, :readonly => true
21
- property :timeout, T_UINT32
22
-
23
- function :set_current_operation_progress, nil, [T_UINT32]
24
- function :set_next_operation, nil, [WSTRING, T_UINT32]
25
- function :wait_for_completion, nil, [T_INT32]
26
- function :wait_for_operation_completion, nil, [T_UINT32, T_INT32]
27
- function :cancel, nil, []
28
-
29
- # This method blocks the execution while the operations represented
30
- # by this {Progress} object execute, but yields a block every `x`
31
- # percent (interval given in parameters).
32
- def wait(interval_percent=1)
33
- # If no block is given we just wait until completion, not worrying
34
- # about tracking percentages.
35
- if !block_given?
36
- wait_for_completion(-1)
37
- return
38
- end
39
-
40
- # Initial value forces the 0% yield
41
- last_reported = -100
42
-
43
- while true
44
- delta = percent - last_reported
45
- last_reported += delta
46
- yield self if delta >= interval_percent
47
-
48
- # This either sleeps for half a second or returns on
49
- # completion
50
- wait_for_completion(500)
51
-
52
- break if completed || canceled
53
- end
54
- end
55
- end
56
- end
57
- end
58
- end
@@ -1,17 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class SerialPort < AbstractInterface
5
- IID = "937f6970-5103-4745-b78e-d28dcf1479a8"
6
-
7
- property :slot, T_UINT32, :readonly => true
8
- property :enabled, T_BOOL
9
- property :io_base, T_UINT32
10
- property :irq, T_UINT32
11
- property :host_mode, :PortMode
12
- property :server, T_BOOL
13
- property :path, WSTRING
14
- end
15
- end
16
- end
17
- end
@@ -1,16 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class Session < AbstractInterface
5
- IID_STR = "12F4DCDB-12B2-4EC1-B7CD-DDD9F6C5BF4D"
6
-
7
- property :state, :SessionState, :readonly => true
8
- property :type, :SessionType, :readonly => true
9
- property :machine, :Machine, :readonly => true
10
- property :console, :Console, :readonly => true
11
-
12
- function :close, nil, []
13
- end
14
- end
15
- end
16
- end
@@ -1,9 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class SessionState < AbstractEnum
5
- map [:null, :closed, :open, :spawning, :closing]
6
- end
7
- end
8
- end
9
- end
@@ -1,9 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class SessionType < AbstractEnum
5
- map [:null, :direct, :remote, :existing]
6
- end
7
- end
8
- end
9
- end
@@ -1,15 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class SharedFolder < AbstractInterface
5
- IID = "64637bb2-9e17-471c-b8f3-f8968dd9884e"
6
-
7
- property :name, WSTRING, :readonly => true
8
- property :host_path, WSTRING, :readonly => true
9
- property :accessible, T_BOOL, :readonly => true
10
- property :writable, T_BOOL, :readonly => true
11
- property :last_access_error, WSTRING, :readonly => true
12
- end
13
- end
14
- end
15
- end
@@ -1,18 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class Snapshot < AbstractInterface
5
- IID = "1a2d0551-58a4-4107-857e-ef414fc42ffc"
6
-
7
- property :id, WSTRING, :readonly => true
8
- property :name, WSTRING
9
- property :description, WSTRING
10
- property :time_stamp, T_INT64, :readonly => true
11
- property :online, T_BOOL, :readonly => true
12
- property :machine, :Machine, :readonly => true
13
- property :parent, :Snapshot, :readonly => true
14
- property :children, [:Snapshot], :readonly => true
15
- end
16
- end
17
- end
18
- end
@@ -1,9 +0,0 @@
1
- module VirtualBox
2
- module COM
3
- module Interface
4
- class StorageBus < AbstractEnum
5
- map [:null, :ide, :sata, :scsi, :floppy]
6
- end
7
- end
8
- end
9
- end