Class: Vulkan::Mock::SwapchainSurfaceInfo
- Inherits:
-
Object
- Object
- Vulkan::Mock::SwapchainSurfaceInfo
- Defined in:
- lib/vulkan/mock/swapchain_surface_info.rb
Overview
A mock object that you can use in your unit testing. This way you can construct Vulkan-ish data for testing against that doesn’t depend on any underlying hardware. All of the properties of this object are optional, and sane (but arbitary) defaults will be provided for anything omitted.
Constant Summary collapse
- DEFAULT_CAPABILITIES =
These values were chosen arbitrarily.
{ min_image_count: 0, max_image_count: 10, current_extent: { width: 800, height: 600 }, min_image_extent: { width: 1, height: 1 }, max_image_extent: { width: 8192, height: 8192 }, max_image_array_layers: 128, supported_transforms: [ :identity, :rotate_90, :rotate_180, :rotate_270, :horizontal_mirror, :horizontal_mirror_rotate_90, :horizontal_mirror_rotate_180, :horizontal_mirror_rotate_270, :inherit ], current_transform: [ :identity ], supported_composite_alpha: [ :opaque, :pre_multiplied, :post_multiplied, :inherit ], supported_usage: [ :transfer_src, :transfer_dst, :sampled, :storage, :color_attachment, :depth_stencil_attachment, :transient_attachment, :input_attachment ] }
Instance Attribute Summary collapse
-
#capabilities ⇒ Object
readonly
Returns the value of attribute capabilities.
-
#formats ⇒ Object
readonly
Returns the value of attribute formats.
-
#presentation_modes ⇒ Object
readonly
Returns the value of attribute presentation_modes.
Instance Method Summary collapse
-
#initialize(presentation_modes: [:fifo, :mailbox, :immediate], formats: [{ format: :r8g8b8a8_snorm, color_space: :srgb_nonlinear }], **capabilities) ⇒ SwapchainSurfaceInfo
constructor
A new instance of SwapchainSurfaceInfo.
Constructor Details
#initialize(presentation_modes: [:fifo, :mailbox, :immediate], formats: [{ format: :r8g8b8a8_snorm, color_space: :srgb_nonlinear }], **capabilities) ⇒ SwapchainSurfaceInfo
Returns a new instance of SwapchainSurfaceInfo.
33 34 35 36 37 38 39 |
# File 'lib/vulkan/mock/swapchain_surface_info.rb', line 33 def initialize(presentation_modes: [:fifo, :mailbox, :immediate], formats: [{ format: :r8g8b8a8_snorm, color_space: :srgb_nonlinear }], **capabilities) @presentation_modes = presentation_modes @formats = formats @capabilities = DEFAULT_CAPABILITIES.merge(capabilities) end |
Instance Attribute Details
#capabilities ⇒ Object (readonly)
Returns the value of attribute capabilities.
31 32 33 |
# File 'lib/vulkan/mock/swapchain_surface_info.rb', line 31 def capabilities @capabilities end |
#formats ⇒ Object (readonly)
Returns the value of attribute formats.
30 31 32 |
# File 'lib/vulkan/mock/swapchain_surface_info.rb', line 30 def formats @formats end |
#presentation_modes ⇒ Object (readonly)
Returns the value of attribute presentation_modes.
29 30 31 |
# File 'lib/vulkan/mock/swapchain_surface_info.rb', line 29 def presentation_modes @presentation_modes end |