Class VkCooperativeMatrixPropertiesNV

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

    public class VkCooperativeMatrixPropertiesNV
    extends org.lwjgl.system.Struct
    implements org.lwjgl.system.NativeResource
    Structure specifying cooperative matrix properties.
    Description

    If some types are preferred over other types (e.g. for performance), they should appear earlier in the list enumerated by GetPhysicalDeviceCooperativeMatrixPropertiesNV.

    At least one entry in the list must have power of two values for all of MSize, KSize, and NSize.

    Valid Usage (Implicit)
    • sType must be STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV
    • pNext must be NULL
    • AType must be a valid VkComponentTypeNV value
    • BType must be a valid VkComponentTypeNV value
    • CType must be a valid VkComponentTypeNV value
    • DType must be a valid VkComponentTypeNV value
    • scope must be a valid VkScopeNV value
    See Also

    GetPhysicalDeviceCooperativeMatrixPropertiesNV

    Member documentation

    • sType – the type of this structure.
    • pNextNULL or a pointer to an extension-specific structure.
    • MSize – the number of rows in matrices A, C, and D.
    • NSize – the number of columns in matrices B, C, D.
    • KSize – the number of columns in matrix A and rows in matrix B.
    • AType – the component type of matrix A, of type VkComponentTypeNV.
    • BType – the component type of matrix B, of type VkComponentTypeNV.
    • CType – the component type of matrix C, of type VkComponentTypeNV.
    • DType – the component type of matrix D, of type VkComponentTypeNV.
    • scope – the scope of all the matrix types, of type VkScopeNV.

    Layout

    
     struct VkCooperativeMatrixPropertiesNV {
         VkStructureType sType;
         void * pNext;
         uint32_t MSize;
         uint32_t NSize;
         uint32_t KSize;
         VkComponentTypeNV AType;
         VkComponentTypeNV BType;
         VkComponentTypeNV CType;
         VkComponentTypeNV DType;
         VkScopeNV scope;
     }
    • Field Detail

      • SIZEOF

        The struct size in bytes.
      • ALIGNOF

        The struct alignment in bytes.
      • STYPE, PNEXT, MSIZE, NSIZE, KSIZE, ATYPE, BTYPE, CTYPE, DTYPE, SCOPE

        The struct member offsets.
    • Constructor Detail

      • VkCooperativeMatrixPropertiesNV

        public VkCooperativeMatrixPropertiesNV​(java.nio.ByteBuffer container)
        Creates a VkCooperativeMatrixPropertiesNV 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.
      • MSize

        public int MSize()
        Returns the value of the MSize field.
      • NSize

        public int NSize()
        Returns the value of the NSize field.
      • KSize

        public int KSize()
        Returns the value of the KSize field.
      • AType

        public int AType()
        Returns the value of the AType field.
      • BType

        public int BType()
        Returns the value of the BType field.
      • CType

        public int CType()
        Returns the value of the CType field.
      • DType

        public int DType()
        Returns the value of the DType field.
      • scope

        public int scope()
        Returns the value of the scope field.
      • set

        public VkCooperativeMatrixPropertiesNV set​(int sType,
                                                   long pNext,
                                                   int MSize,
                                                   int NSize,
                                                   int KSize,
                                                   int AType,
                                                   int BType,
                                                   int CType,
                                                   int DType,
                                                   int scope)
        Initializes this struct with the specified values.
      • malloc

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

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

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

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

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

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

        public static VkCooperativeMatrixPropertiesNV callocStack​(org.lwjgl.system.MemoryStack stack)
        Returns a new VkCooperativeMatrixPropertiesNV 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().
      • nMSize

        public static int nMSize​(long struct)
        Unsafe version of MSize().
      • nNSize

        public static int nNSize​(long struct)
        Unsafe version of NSize().
      • nKSize

        public static int nKSize​(long struct)
        Unsafe version of KSize().
      • nAType

        public static int nAType​(long struct)
        Unsafe version of AType().
      • nBType

        public static int nBType​(long struct)
        Unsafe version of BType().
      • nCType

        public static int nCType​(long struct)
        Unsafe version of CType().
      • nDType

        public static int nDType​(long struct)
        Unsafe version of DType().
      • nscope

        public static int nscope​(long struct)
        Unsafe version of scope().
      • 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.
      • nMSize

        public static void nMSize​(long struct,
                                  int value)
        Unsafe version of MSize.
      • nNSize

        public static void nNSize​(long struct,
                                  int value)
        Unsafe version of NSize.
      • nKSize

        public static void nKSize​(long struct,
                                  int value)
        Unsafe version of KSize.
      • nAType

        public static void nAType​(long struct,
                                  int value)
        Unsafe version of AType.
      • nBType

        public static void nBType​(long struct,
                                  int value)
        Unsafe version of BType.
      • nCType

        public static void nCType​(long struct,
                                  int value)
        Unsafe version of CType.
      • nDType

        public static void nDType​(long struct,
                                  int value)
        Unsafe version of DType.
      • nscope

        public static void nscope​(long struct,
                                  int value)
        Unsafe version of scope.