All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.bytedeco.bullet.LinearMath.btQuaternionArray Maven / Gradle / Ivy

There is a newer version: 3.25-1.5.11
Show newest version
// Targeted by JavaCPP version 1.5.8: DO NOT EDIT THIS FILE

package org.bytedeco.bullet.LinearMath;

import java.nio.*;
import org.bytedeco.javacpp.*;
import org.bytedeco.javacpp.annotation.*;

import static org.bytedeco.javacpp.presets.javacpp.*;

import static org.bytedeco.bullet.global.LinearMath.*;

@Name("btAlignedObjectArray") @NoOffset @Properties(inherit = org.bytedeco.bullet.presets.LinearMath.class)
public class btQuaternionArray extends Pointer {
    static { Loader.load(); }
    /** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */
    public btQuaternionArray(Pointer p) { super(p); }
    /** Native array allocator. Access with {@link Pointer#position(long)}. */
    public btQuaternionArray(long size) { super((Pointer)null); allocateArray(size); }
    private native void allocateArray(long size);
    @Override public btQuaternionArray position(long position) {
        return (btQuaternionArray)super.position(position);
    }
    @Override public btQuaternionArray getPointer(long i) {
        return new btQuaternionArray((Pointer)this).offsetAddress(i);
    }

	public native @ByRef @Name("operator =") btQuaternionArray put(@Const @ByRef btQuaternionArray other);
	public btQuaternionArray() { super((Pointer)null); allocate(); }
	private native void allocate();

	/**Generally it is best to avoid using the copy constructor of an btAlignedObjectArray, and use a (const) reference to the array instead. */
	public btQuaternionArray(@Const @ByRef btQuaternionArray otherArray) { super((Pointer)null); allocate(otherArray); }
	private native void allocate(@Const @ByRef btQuaternionArray otherArray);

	/** return the number of elements in the array */
	public native int size();

	public native @ByRef btQuaternion at(int n);

	public native @ByRef @Name("operator []") btQuaternion get(int n);

	/**clear the array, deallocated memory. Generally it is better to use array.resize(0), to reduce performance overhead of run-time memory (de)allocations. */
	public native void clear();

	public native void pop_back();

	/**resize changes the number of elements in the array. If the new size is larger, the new elements will be constructed using the optional second argument.
	 * when the new number of elements is smaller, the destructor will be called, but memory will not be freed, to reduce performance overhead of run-time memory (de)allocations. */
	public native void resizeNoInitialize(int newsize);

	public native void resize(int newsize, @Const @ByRef(nullValue = "btQuaternion()") btQuaternion fillData);
	public native void resize(int newsize);
	public native @ByRef btQuaternion expandNonInitializing();

	public native @ByRef btQuaternion expand(@Const @ByRef(nullValue = "btQuaternion()") btQuaternion fillValue);
	public native @ByRef btQuaternion expand();

	public native void push_back(@Const @ByRef btQuaternion _Val);

	/** return the pre-allocated (reserved) elements, this is at least as large as the total number of elements,see size() and reserve() */
	public native @Name("capacity") int _capacity();

	public native void reserve(int _Count);

	/**heap sort from http://www.csse.monash.edu.au/~lloyd/tildeAlgDS/Sort/Heap/ */ /*downHeap*/

	public native void swap(int index0, int index1);

	/**non-recursive binary search, assumes sorted array */
	public native int findBinarySearch(@Const @ByRef btQuaternion key);

	public native int findLinearSearch(@Const @ByRef btQuaternion key);

	// If the key is not in the array, return -1 instead of 0,
	// since 0 also means the first element in the array.
	public native int findLinearSearch2(@Const @ByRef btQuaternion key);

	public native void removeAtIndex(int index);
	public native void remove(@Const @ByRef btQuaternion key);

	//PCK: whole function
	public native void initializeFromBuffer(Pointer buffer, int size, int _capacity);

	public native void copyFromArray(@Const @ByRef btQuaternionArray otherArray);
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy