Class XrSecondaryViewConfigurationLayerInfoMSFT
- All Implemented Interfaces:
AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
XrViewConfigurationType.
Description
This structure is similar to the XrFrameEndInfo structure, with an extra XrViewConfigurationType field to specify the view configuration for which the submitted layers will be rendered.
The application should render its content for both the primary and secondary view configurations using the same XrFrameState::predictedDisplayTime reported by WaitFrame. The runtime must treat both the primary views and secondary views as being submitted for the same XrViewLocateInfo::displayTime specified in the call to EndFrame.
For layers such as quad layers whose content is identical across view configurations, the application can submit the same XrCompositionLayerBaseHeader structures to multiple view configurations in the same EndFrame function call.
For each frame, the application should only render and submit layers for the secondary view configurations that were active that frame, as indicated in the XrSecondaryViewConfigurationFrameStateMSFT filled in for that frame’s WaitFrame call. The runtime must ignore composition layers submitted for an inactive view configuration.
Valid Usage (Implicit)
- The
XR_MSFT_secondary_view_configurationextension must be enabled prior to usingXrSecondaryViewConfigurationLayerInfoMSFT typemust beTYPE_SECONDARY_VIEW_CONFIGURATION_LAYER_INFO_MSFTnextmust beNULLor a valid pointer to the next structure in a structure chainviewConfigurationTypemust be a validXrViewConfigurationTypevalueenvironmentBlendModemust be a validXrEnvironmentBlendModevaluelayersmust be a pointer to an array oflayerCountvalidXrCompositionLayerBaseHeader-based structures. See also:XrCompositionLayerCubeKHR,XrCompositionLayerCylinderKHR,XrCompositionLayerEquirect2KHR,XrCompositionLayerEquirectKHR,XrCompositionLayerPassthroughFB,XrCompositionLayerPassthroughHTC,XrCompositionLayerProjection,XrCompositionLayerQuad- The
layerCountparameter must be greater than 0
See Also
XrCompositionLayerBaseHeader, XrSecondaryViewConfigurationFrameEndInfoMSFT, EndFrame
Layout
struct XrSecondaryViewConfigurationLayerInfoMSFT {
XrStructureType type();
void const * next();
XrViewConfigurationType viewConfigurationType();
XrEnvironmentBlendMode environmentBlendMode();
uint32_t layerCount();
XrCompositionLayerBaseHeader const * const * layers();
}-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classAn array ofXrSecondaryViewConfigurationLayerInfoMSFTstructs.Nested classes/interfaces inherited from class org.lwjgl.system.Struct
org.lwjgl.system.Struct.StructValidationNested classes/interfaces inherited from interface org.lwjgl.system.Pointer
org.lwjgl.system.Pointer.Default -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intThe struct alignment in bytes.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct size in bytes.static final intThe struct member offsets.static final intThe struct member offsets.Fields inherited from interface org.lwjgl.system.Pointer
BITS32, BITS64, CLONG_SHIFT, CLONG_SIZE, POINTER_SHIFT, POINTER_SIZE -
Constructor Summary
ConstructorsConstructorDescriptionCreates aXrSecondaryViewConfigurationLayerInfoMSFTinstance at the current position of the specifiedByteBuffercontainer. -
Method Summary
Modifier and TypeMethodDescriptioncalloc()Returns a newXrSecondaryViewConfigurationLayerInfoMSFTinstance allocated withmemCalloc.calloc(int capacity) Returns a newXrSecondaryViewConfigurationLayerInfoMSFT.Bufferinstance allocated withmemCalloc.calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newXrSecondaryViewConfigurationLayerInfoMSFT.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.calloc(org.lwjgl.system.MemoryStack stack) Returns a newXrSecondaryViewConfigurationLayerInfoMSFTinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.create()Returns a newXrSecondaryViewConfigurationLayerInfoMSFTinstance allocated withBufferUtils.create(int capacity) Returns a newXrSecondaryViewConfigurationLayerInfoMSFT.Bufferinstance allocated withBufferUtils.create(long address) Returns a newXrSecondaryViewConfigurationLayerInfoMSFTinstance for the specified memory address.create(long address, int capacity) Create aXrSecondaryViewConfigurationLayerInfoMSFT.Bufferinstance at the specified memory.static @Nullable XrSecondaryViewConfigurationLayerInfoMSFTcreateSafe(long address) static @Nullable XrSecondaryViewConfigurationLayerInfoMSFT.BuffercreateSafe(long address, int capacity) inttheXrEnvironmentBlendModevalue representing the desired environment blend mode for this view configuration.environmentBlendMode(int value) Sets the specified value to theenvironmentBlendMode()field.intthe number of composition layers in this frame for the secondary view configuration type.org.lwjgl.PointerBufferlayers()a pointer to an array ofXrCompositionLayerBaseHeaderpointers.layers(org.lwjgl.PointerBuffer value) Sets the address of the specifiedPointerBufferto thelayers()field.malloc()Returns a newXrSecondaryViewConfigurationLayerInfoMSFTinstance allocated withmemAlloc.malloc(int capacity) Returns a newXrSecondaryViewConfigurationLayerInfoMSFT.Bufferinstance allocated withmemAlloc.malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newXrSecondaryViewConfigurationLayerInfoMSFT.Bufferinstance allocated on the specifiedMemoryStack.malloc(org.lwjgl.system.MemoryStack stack) Returns a newXrSecondaryViewConfigurationLayerInfoMSFTinstance allocated on the specifiedMemoryStack.static intnenvironmentBlendMode(long struct) Unsafe version ofenvironmentBlendMode().static voidnenvironmentBlendMode(long struct, int value) Unsafe version ofenvironmentBlendMode.longnext()NULLor a pointer to the next structure in a structure chain.next(long value) Sets the specified value to thenext()field.static intnlayerCount(long struct) Unsafe version oflayerCount().static voidnlayerCount(long struct, int value) Sets the specified value to thelayerCountfield of the specifiedstruct.static org.lwjgl.PointerBuffernlayers(long struct) Unsafe version oflayers.static voidnlayers(long struct, org.lwjgl.PointerBuffer value) Unsafe version oflayers.static longnnext(long struct) Unsafe version ofnext().static voidnnext(long struct, long value) Unsafe version ofnext.static intntype(long struct) Unsafe version oftype().static voidntype(long struct, int value) Unsafe version oftype.static intnviewConfigurationType(long struct) Unsafe version ofviewConfigurationType().static voidnviewConfigurationType(long struct, int value) Unsafe version ofviewConfigurationType.set(int type, long next, int viewConfigurationType, int environmentBlendMode, org.lwjgl.PointerBuffer layers) Initializes this struct with the specified values.Copies the specified struct data to this struct.intsizeof()inttype()theXrStructureTypeof this structure.type(int value) Sets the specified value to thetype()field.Sets theTYPE_SECONDARY_VIEW_CONFIGURATION_LAYER_INFO_MSFTvalue to thetype()field.static voidvalidate(long struct) Validates pointer members that should not beNULL.intXrViewConfigurationTypeto which the composition layers will be displayed.viewConfigurationType(int value) Sets the specified value to theviewConfigurationType()field.Methods inherited from class org.lwjgl.system.Struct
clear, free, isNull, validate, validateMethods inherited from class org.lwjgl.system.Pointer.Default
address, equals, hashCode, toStringMethods inherited from interface org.lwjgl.system.NativeResource
close, free
-
Field Details
-
SIZEOF
public static final int SIZEOFThe struct size in bytes. -
ALIGNOF
public static final int ALIGNOFThe struct alignment in bytes. -
TYPE
public static final int TYPEThe struct member offsets. -
NEXT
public static final int NEXTThe struct member offsets. -
VIEWCONFIGURATIONTYPE
public static final int VIEWCONFIGURATIONTYPEThe struct member offsets. -
ENVIRONMENTBLENDMODE
public static final int ENVIRONMENTBLENDMODEThe struct member offsets. -
LAYERCOUNT
public static final int LAYERCOUNTThe struct member offsets. -
LAYERS
public static final int LAYERSThe struct member offsets.
-
-
Constructor Details
-
XrSecondaryViewConfigurationLayerInfoMSFT
Creates aXrSecondaryViewConfigurationLayerInfoMSFTinstance at the current position of the specifiedByteBuffercontainer. Changes to the buffer's content will be visible to the struct instance and vice versa.The created instance holds a strong reference to the container object.
-
-
Method Details
-
sizeof
public int sizeof()- Specified by:
sizeofin classorg.lwjgl.system.Struct<XrSecondaryViewConfigurationLayerInfoMSFT>
-
type
public int type()theXrStructureTypeof this structure. -
next
public long next()NULLor a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension. -
viewConfigurationType
public int viewConfigurationType()XrViewConfigurationTypeto which the composition layers will be displayed. -
environmentBlendMode
public int environmentBlendMode()theXrEnvironmentBlendModevalue representing the desired environment blend mode for this view configuration. -
layerCount
public int layerCount()the number of composition layers in this frame for the secondary view configuration type. The maximum supported layer count is identified byXrSystemGraphicsProperties::maxLayerCount. If layerCount is greater than the maximum supported layer count thenERROR_LAYER_LIMIT_EXCEEDEDis returned. -
layers
public org.lwjgl.PointerBuffer layers()a pointer to an array ofXrCompositionLayerBaseHeaderpointers. -
type
Sets the specified value to thetype()field. -
type$Default
Sets theTYPE_SECONDARY_VIEW_CONFIGURATION_LAYER_INFO_MSFTvalue to thetype()field. -
next
Sets the specified value to thenext()field. -
viewConfigurationType
Sets the specified value to theviewConfigurationType()field. -
environmentBlendMode
Sets the specified value to theenvironmentBlendMode()field. -
layers
Sets the address of the specifiedPointerBufferto thelayers()field. -
set
public XrSecondaryViewConfigurationLayerInfoMSFT set(int type, long next, int viewConfigurationType, int environmentBlendMode, org.lwjgl.PointerBuffer layers) Initializes this struct with the specified values. -
set
Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
Returns a newXrSecondaryViewConfigurationLayerInfoMSFTinstance allocated withmemAlloc. The instance must be explicitly freed. -
calloc
Returns a newXrSecondaryViewConfigurationLayerInfoMSFTinstance allocated withmemCalloc. The instance must be explicitly freed. -
create
Returns a newXrSecondaryViewConfigurationLayerInfoMSFTinstance allocated withBufferUtils. -
create
Returns a newXrSecondaryViewConfigurationLayerInfoMSFTinstance for the specified memory address. -
createSafe
-
malloc
Returns a newXrSecondaryViewConfigurationLayerInfoMSFT.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
Returns a newXrSecondaryViewConfigurationLayerInfoMSFT.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
Returns a newXrSecondaryViewConfigurationLayerInfoMSFT.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
Create aXrSecondaryViewConfigurationLayerInfoMSFT.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
public static @Nullable XrSecondaryViewConfigurationLayerInfoMSFT.Buffer createSafe(long address, int capacity) -
malloc
Returns a newXrSecondaryViewConfigurationLayerInfoMSFTinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
Returns a newXrSecondaryViewConfigurationLayerInfoMSFTinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static XrSecondaryViewConfigurationLayerInfoMSFT.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newXrSecondaryViewConfigurationLayerInfoMSFT.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
calloc
public static XrSecondaryViewConfigurationLayerInfoMSFT.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newXrSecondaryViewConfigurationLayerInfoMSFT.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
ntype
public static int ntype(long struct) Unsafe version oftype(). -
nnext
public static long nnext(long struct) Unsafe version ofnext(). -
nviewConfigurationType
public static int nviewConfigurationType(long struct) Unsafe version ofviewConfigurationType(). -
nenvironmentBlendMode
public static int nenvironmentBlendMode(long struct) Unsafe version ofenvironmentBlendMode(). -
nlayerCount
public static int nlayerCount(long struct) Unsafe version oflayerCount(). -
nlayers
public static org.lwjgl.PointerBuffer nlayers(long struct) Unsafe version oflayers. -
ntype
public static void ntype(long struct, int value) Unsafe version oftype. -
nnext
public static void nnext(long struct, long value) Unsafe version ofnext. -
nviewConfigurationType
public static void nviewConfigurationType(long struct, int value) Unsafe version ofviewConfigurationType. -
nenvironmentBlendMode
public static void nenvironmentBlendMode(long struct, int value) Unsafe version ofenvironmentBlendMode. -
nlayerCount
public static void nlayerCount(long struct, int value) Sets the specified value to thelayerCountfield of the specifiedstruct. -
nlayers
public static void nlayers(long struct, org.lwjgl.PointerBuffer value) Unsafe version oflayers. -
validate
public static void validate(long struct) Validates pointer members that should not beNULL.- Parameters:
struct- the struct to validate
-