Class AIMeshKey

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

    public class AIMeshKey
    extends Struct
    implements NativeResource
    Binds a anim mesh to a specific point in time.

    Member documentation

    • mTime – The time of this key
    • mValue – Index into the AIMesh::mAnimMeshes array of the mesh coresponding to the AIMeshAnim hosting this key frame. The referenced anim mesh is evaluated according to the rules defined in the docs for AIAnimMesh.

    Layout

    
     struct aiMeshKey {
         double mTime;
         unsigned int mValue;
     }
    • Field Detail

      • SIZEOF

        The struct size in bytes.
      • ALIGNOF

        The struct alignment in bytes.
      • MTIME, MVALUE

        The struct member offsets.
    • Constructor Detail

      • AIMeshKey

        public AIMeshKey​(java.nio.ByteBuffer container)
        Creates a AIMeshKey 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()
        Description copied from class: Struct
        Returns sizeof(struct).
        Specified by:
        sizeof in class Struct
      • mTime

        public double mTime()
        Returns the value of the mTime field.
      • mValue

        public int mValue()
        Returns the value of the mValue field.
      • mTime

        public AIMeshKey mTime​(double value)
        Sets the specified value to the mTime field.
      • mValue

        public AIMeshKey mValue​(int value)
        Sets the specified value to the mValue field.
      • set

        public AIMeshKey set​(double mTime,
                             int mValue)
        Initializes this struct with the specified values.
      • set

        public AIMeshKey set​(AIMeshKey src)
        Copies the specified struct data to this struct.
        Parameters:
        src - the source struct
        Returns:
        this struct
      • malloc

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

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

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

        @Nullable
        public static AIMeshKey createSafe​(long address)
        Like create, but returns null if address is NULL.
      • malloc

        public static AIMeshKey.Buffer malloc​(int capacity)
        Returns a new AIMeshKey.Buffer instance allocated with memAlloc. The instance must be explicitly freed.
        Parameters:
        capacity - the buffer capacity
      • calloc

        public static AIMeshKey.Buffer calloc​(int capacity)
        Returns a new AIMeshKey.Buffer instance allocated with memCalloc. The instance must be explicitly freed.
        Parameters:
        capacity - the buffer capacity
      • create

        public static AIMeshKey.Buffer create​(long address,
                                              int capacity)
        Create a AIMeshKey.Buffer instance at the specified memory.
        Parameters:
        address - the memory address
        capacity - the buffer capacity
      • createSafe

        @Nullable
        public static AIMeshKey.Buffer createSafe​(long address,
                                                  int capacity)
        Like create, but returns null if address is NULL.
      • callocStack

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

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

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

        public static AIMeshKey.Buffer callocStack​(int capacity)
        Returns a new AIMeshKey.Buffer instance allocated on the thread-local MemoryStack and initializes all its bits to zero.
        Parameters:
        capacity - the buffer capacity
      • callocStack

        public static AIMeshKey.Buffer callocStack​(int capacity,
                                                   MemoryStack stack)
        Returns a new AIMeshKey.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.
        Parameters:
        stack - the stack from which to allocate
        capacity - the buffer capacity
      • nmTime

        public static double nmTime​(long struct)
        Unsafe version of mTime().
      • nmValue

        public static int nmValue​(long struct)
        Unsafe version of mValue().
      • nmTime

        public static void nmTime​(long struct,
                                  double value)
        Unsafe version of mTime.
      • nmValue

        public static void nmValue​(long struct,
                                   int value)
        Unsafe version of mValue.