Sha256: 0aece3fdb2c3979cec4c1413eaef857f24c4793bbe369b909d797480b1335f3d

Contents?: true

Size: 1.75 KB

Versions: 6

Compression:

Stored size: 1.75 KB

Contents

package org.sunflow.util;

public final class FloatArray {

    private float[] array;
    private int size;

    public FloatArray() {
        array = new float[10];
        size = 0;
    }

    public FloatArray(int capacity) {
        array = new float[capacity];
        size = 0;
    }

    /**
     * Append a float to the end of the array.
     *
     * @param f
     */
    public final void add(float f) {
        if (size == array.length) {
            float[] oldArray = array;
            array = new float[(size * 3) / 2 + 1];
            System.arraycopy(oldArray, 0, array, 0, size);
        }
        array[size] = f;
        size++;
    }

    /**
     * Write a value to the specified index. Assumes the array is already big
     * enough.
     *
     * @param index
     * @param value
     */
    public final void set(int index, float value) {
        array[index] = value;
    }

    /**
     * Read value from the array.
     *
     * @param index index into the array
     * @return value at the specified index
     */
    public final float get(int index) {
        return array[index];
    }

    /**
     * Returns the number of elements added to the array.
     *
     * @return current size of the array
     */
    public final int getSize() {
        return size;
    }

    /**
     * Return a copy of the array, trimmed to fit the size of its contents
     * exactly.
     *
     * @return a new array of exactly the right length
     */
    public final float[] trim() {
        if (size < array.length) {
            float[] oldArray = array;
            array = new float[size];
            System.arraycopy(oldArray, 0, array, 0, size);
        }
        return array;
    }
}

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
joonsrenderer-1.3.1-java src/main/java/org/sunflow/util/FloatArray.java
joonsrenderer-1.2.0-java src/main/java/org/sunflow/util/FloatArray.java
joonsrenderer-1.1.3-java src/main/java/org/sunflow/util/FloatArray.java
joonsrenderer-1.1.2-java src/main/java/org/sunflow/util/FloatArray.java
joonsrenderer-1.1.1-java src/main/java/org/sunflow/util/FloatArray.java
joonsrenderer-1.1-java src/main/java/org/sunflow/util/FloatArray.java