Class VkExportMemoryWin32HandleInfoNV

  • All Implemented Interfaces:
    java.lang.AutoCloseable, org.lwjgl.system.NativeResource, org.lwjgl.system.Pointer

    public class VkExportMemoryWin32HandleInfoNV
    extends org.lwjgl.system.Struct
    implements org.lwjgl.system.NativeResource
    specify security attributes and access rights for Win32 memory handles.
    Description

    If this structure is not present, or if pAttributes is set to NULL, default security descriptor values will be used, and child processes created by the application will not inherit the handle, as described in the MSDN documentation for "Synchronization Object Security and Access Rights"[1]. Further, if the structure is not present, the access rights will be

    DXGI_SHARED_RESOURCE_READ | DXGI_SHARED_RESOURCE_WRITE

    [1] https://msdn.microsoft.com/en-us/library/windows/desktop/ms686670.aspx

    Valid Usage (Implicit)

    Member documentation

    • sType – the type of this structure.
    • pNextNULL or a pointer to an extension-specific structure.
    • pAttributes – a pointer to a Windows SECURITY_ATTRIBUTES structure specifying security attributes of the handle.
    • dwAccess – a DWORD specifying access rights of the handle.

    Layout

    
     struct VkExportMemoryWin32HandleInfoNV {
         VkStructureType sType;
         void const * pNext;
         SECURITY_ATTRIBUTES const * pAttributes;
         DWORD dwAccess;
     }
    • Field Detail

      • SIZEOF

        The struct size in bytes.
      • ALIGNOF

        The struct alignment in bytes.
      • STYPE, PNEXT, PATTRIBUTES, DWACCESS

        The struct member offsets.
    • Constructor Detail

      • VkExportMemoryWin32HandleInfoNV

        public VkExportMemoryWin32HandleInfoNV​(java.nio.ByteBuffer container)
        Creates a VkExportMemoryWin32HandleInfoNV instance at the current position of the specified ByteBuffer container. 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 Detail

      • sizeof

        public int sizeof()
        Specified by:
        sizeof in class org.lwjgl.system.Struct
      • sType

        public int sType()
        Returns the value of the sType field.
      • pNext

        public long pNext()
        Returns the value of the pNext field.
      • pAttributes

        @Nullable
        public org.lwjgl.system.windows.SECURITY_ATTRIBUTES pAttributes()
        Returns a SECURITY_ATTRIBUTES view of the struct pointed to by the pAttributes field.
      • dwAccess

        public int dwAccess()
        Returns the value of the dwAccess field.
      • pAttributes

        public VkExportMemoryWin32HandleInfoNV pAttributes​(@Nullable
                                                           org.lwjgl.system.windows.SECURITY_ATTRIBUTES value)
        Sets the address of the specified SECURITY_ATTRIBUTES to the pAttributes field.
      • set

        public VkExportMemoryWin32HandleInfoNV set​(int sType,
                                                   long pNext,
                                                   @Nullable
                                                   org.lwjgl.system.windows.SECURITY_ATTRIBUTES pAttributes,
                                                   int dwAccess)
        Initializes this struct with the specified values.
      • malloc

        public static VkExportMemoryWin32HandleInfoNV malloc()
        Returns a new VkExportMemoryWin32HandleInfoNV instance allocated with memAlloc. The instance must be explicitly freed.
      • calloc

        public static VkExportMemoryWin32HandleInfoNV calloc()
        Returns a new VkExportMemoryWin32HandleInfoNV instance allocated with memCalloc. The instance must be explicitly freed.
      • create

        public static VkExportMemoryWin32HandleInfoNV create​(long address)
        Returns a new VkExportMemoryWin32HandleInfoNV instance for the specified memory address.
      • mallocStack

        public static VkExportMemoryWin32HandleInfoNV mallocStack()
        Returns a new VkExportMemoryWin32HandleInfoNV instance allocated on the thread-local MemoryStack.
      • callocStack

        public static VkExportMemoryWin32HandleInfoNV callocStack()
        Returns a new VkExportMemoryWin32HandleInfoNV instance allocated on the thread-local MemoryStack and initializes all its bits to zero.
      • mallocStack

        public static VkExportMemoryWin32HandleInfoNV mallocStack​(org.lwjgl.system.MemoryStack stack)
        Returns a new VkExportMemoryWin32HandleInfoNV instance allocated on the specified MemoryStack.
        Parameters:
        stack - the stack from which to allocate
      • callocStack

        public static VkExportMemoryWin32HandleInfoNV callocStack​(org.lwjgl.system.MemoryStack stack)
        Returns a new VkExportMemoryWin32HandleInfoNV instance allocated on the specified MemoryStack and initializes all its bits to zero.
        Parameters:
        stack - the stack from which to allocate
      • nsType

        public static int nsType​(long struct)
        Unsafe version of sType().
      • npNext

        public static long npNext​(long struct)
        Unsafe version of pNext().
      • npAttributes

        @Nullable
        public static org.lwjgl.system.windows.SECURITY_ATTRIBUTES npAttributes​(long struct)
        Unsafe version of pAttributes().
      • ndwAccess

        public static int ndwAccess​(long struct)
        Unsafe version of dwAccess().
      • nsType

        public static void nsType​(long struct,
                                  int value)
        Unsafe version of sType.
      • npNext

        public static void npNext​(long struct,
                                  long value)
        Unsafe version of pNext.
      • npAttributes

        public static void npAttributes​(long struct,
                                        @Nullable
                                        org.lwjgl.system.windows.SECURITY_ATTRIBUTES value)
        Unsafe version of pAttributes.
      • ndwAccess

        public static void ndwAccess​(long struct,
                                     int value)
        Unsafe version of dwAccess.
      • validate

        public static void validate​(long struct)
        Validates pointer members that should not be NULL.
        Parameters:
        struct - the struct to validate
      • validate

        public static void validate​(long array,
                                    int count)
        Calls validate(long) for each struct contained in the specified struct array.
        Parameters:
        array - the struct array to validate
        count - the number of structs in array