SRSDK  0.10.39
Loading...
Searching...
No Matches
InterlacerVulkan Class Reference

C++ wrapper for Vulkan leia_interlacer. More...

#include <interlacer.vulkan.hpp>

Inheritance diagram for InterlacerVulkan:
Interlacer

Public Member Functions

 InterlacerVulkan (Core &core, InterlacerInitConfiguration const &config, VkDevice device, VkPhysicalDevice physicalDevice, VkFormatInt renderTargetFormat, VkFormatInt depthStencilFormat, int32_t maxInFlightFrameCount)
 
 InterlacerVulkan (InterlacerVulkan const &)=delete
 
InterlacerVulkanoperator= (InterlacerVulkan const &)=delete
 
 InterlacerVulkan (InterlacerVulkan &&)=default
 
InterlacerVulkanoperator= (InterlacerVulkan &&)=default
 
void DoPostProcess (int32_t width, int32_t height, bool blendedInterlace, VkFramebuffer frameBuffer, VkImage colorImage, VkImage depthImage, VkSemaphore imageAvailableSemaphore, VkSemaphore renderFinishedSemaphore, int32_t currentFrame)
 
void SetSourceViews (VkImage texture, VkImageView textureView, int32_t viewIndex=0, int layer=0)
 Set Vulkan view texture.
 
 InterlacerVulkan (leia_interlacer *nonOwningInterlacer)
 
- Public Member Functions inherited from Interlacer
 Interlacer ()
 
 ~Interlacer ()
 
 Interlacer (Interlacer const &)=delete
 
Interlaceroperator= (Interlacer const &)=delete
 
 Interlacer (Interlacer &&other)
 
Interlaceroperator= (Interlacer &&other)
 
 operator bool () const
 
void SetLayerCount (int layerCount)
 Sets the number of layers to interlace.
 
LEIA_NODISCARD int GetLayerCount () const
 Gets the current number of layers.
 
void SetNumTiles (int32_t tx, int32_t ty)
 
void GetNumTiles (int32_t *tx, int32_t *ty) const
 
void SetTileLayout (TileLayout tileLayout)
 
void SetOutputAsTiles (bool enable)
 
void SetBaselineScaling (float baseline)
 
LEIA_NODISCARD float GetBaselineScaling ()
 
LEIA_NODISCARD float GetConvergenceDistance ()
 
void SetConvergenceDistance (float distance)
 
float GetPhc ()
 
void SetPhc (float phase)
 
void GetConvergedOrthographicViewInfo (int32_t viewIndex, LEIA_CONST_FLOAT_SLICE(3) cameraPos, LEIA_CONST_FLOAT_SLICE(3) cameraDir, LEIA_CONST_FLOAT_SLICE(3) cameraUp, float width, float height, float nearPlane, float farPlane, LEIA_FLOAT_SLICE(3) viewPos, LEIA_FLOAT_SLICE(16) viewProjectionMatrix, float *viewShearX, float *viewShearY)
 
void GetConvergedPerspectiveViewInfo (int32_t viewIndex, LEIA_CONST_FLOAT_SLICE(3) cameraPos, LEIA_CONST_FLOAT_SLICE(3) cameraDir, LEIA_CONST_FLOAT_SLICE(3) cameraUp, float fieldOfView, float aspectRatio, float nearPlane, float farPlane, LEIA_FLOAT_SLICE(3) viewPos, LEIA_FLOAT_SLICE(16) viewProjectionMatrix, float *viewFieldOfView, float *viewShearX, float *viewShearY)
 
void SetFitMode (FitMode mode)
 
LEIA_NODISCARD FitMode GetFitMode ()
 
void GetRectMatrix (LEIA_FLOAT_SLICE(16) transformMatrix)
 
void SetLocalMatrix (LEIA_CONST_FLOAT_SLICE(16) transformMatrix)
 
void SetCustomTextureMatrix (LEIA_CONST_FLOAT_SLICE(16) textureTransform)
 
void EnableUserMatrix (bool enabled)
 
void GetUserMatrix (LEIA_FLOAT_SLICE(16) transformMatrix)
 
void SetUserMatrix (LEIA_CONST_FLOAT_SLICE(16) transformMatrix)
 
void SetAlpha (float alpha)
 
void SetFlipInputUvVertical (bool flip)
 
void SetSingleViewMode (bool setSingleView, int32_t singleViewIndex)
 
void SetSingleViewModeListener (InterlacerSingleViewModeListener const *listener)
 
void SetSourceViewsSize (int32_t sourceWidth, int32_t sourceHeight, bool isHorizontalViews)
 
void GetSourceViewsSize (int32_t *sourceWidth, int32_t *sourceHeight, bool *isHorizontalViews)
 
void SetSourceMediaIsVideo (bool isVideo)
 
void SetSourceMediaScale (float scaleX, float scaleY)
 
void SetSourceViewsSRGB (bool isSRGB)
 
void SetInShaderSRGBConversion (bool sRGBRead, bool sRGBWrite)
 
void SetViewportScreenPosition (int32_t posX, int32_t posY)
 
void SetViewport (int32_t posX, int32_t posY, int32_t width, int32_t height)
 
void EnableReconvergence (bool enable)
 
LEIA_NODISCARD bool IsReconvergenceEnabled ()
 
LEIA_NODISCARD float GetReconvergence (int layer=0)
 Get the reconvergence amount.
 
void SetReconvergence (float value, int layer=0)
 Set the reconvergence amount.
 
void SetReconvergenceZoom (bool zoomX, bool zoomXY, int layer=0)
 Set what directions reconvergence is calculated for.
 
void SetUseAtlasForViews (bool useAtlasForViews)
 
LEIA_NODISCARD bool GetUseAtlasForViews ()
 
void GetViewOffset (int32_t view, LEIA_FLOAT_SLICE(3) offset)
 
void SetInvertScreenTextureCoordinates (bool invert)
 
LEIA_NODISCARD GraphicsAPI GetGraphicsAPI ()
 
LEIA_NODISCARD leia_interlacerGetHandle () const
 

Additional Inherited Members

- Protected Member Functions inherited from Interlacer
 Interlacer (leia_interlacer *interlacer, bool isInterlacerOwned)
 
- Protected Attributes inherited from Interlacer
leia_interlacer_interlacer
 
bool _isInterlacerOwned
 

Detailed Description

C++ wrapper for Vulkan leia_interlacer.

Constructor & Destructor Documentation

◆ InterlacerVulkan() [1/4]

InterlacerVulkan ( Core core,
InterlacerInitConfiguration const &  config,
VkDevice  device,
VkPhysicalDevice  physicalDevice,
VkFormatInt  renderTargetFormat,
VkFormatInt  depthStencilFormat,
int32_t  maxInFlightFrameCount 
)
inline

◆ InterlacerVulkan() [2/4]

InterlacerVulkan ( InterlacerVulkan const &  )
delete

◆ InterlacerVulkan() [3/4]

◆ InterlacerVulkan() [4/4]

InterlacerVulkan ( leia_interlacer nonOwningInterlacer)
inline

Member Function Documentation

◆ operator=() [1/2]

InterlacerVulkan & operator= ( InterlacerVulkan const &  )
delete

◆ operator=() [2/2]

InterlacerVulkan & operator= ( InterlacerVulkan &&  )
default

◆ DoPostProcess()

void DoPostProcess ( int32_t  width,
int32_t  height,
bool  blendedInterlace,
VkFramebuffer  frameBuffer,
VkImage  colorImage,
VkImage  depthImage,
VkSemaphore  imageAvailableSemaphore,
VkSemaphore  renderFinishedSemaphore,
int32_t  currentFrame 
)
inline

◆ SetSourceViews()

void SetSourceViews ( VkImage  texture,
VkImageView  textureView,
int32_t  viewIndex = 0,
int  layer = 0 
)
inline

Set Vulkan view texture.

This method allows you to specify the texture for a specific view index and layer.

Parameters
[in]textureThe view texture.
[in]textureViewThe view texture's image-view.
[in]viewIndexThe view index.
[in]layerThe layer at which to set the view texture.

The documentation for this class was generated from the following file: