package org.nd4j.aeron.ipc; import org.nd4j.linalg.api.ndarray.INDArray; import java.io.Serializable; /** * A simple interface for retrieving an * ndarray * * @author Adam Gibson */ public interface NDArrayHolder extends Serializable { /** * Set the ndarray * @param arr the ndarray for this holder * to use */ void setArray(INDArray arr); /** * The number of updates * that have been sent to this older. * @return */ int totalUpdates(); /** * Retrieve an ndarray * @return */ INDArray get(); /** * Retrieve a partial view of the ndarray. * This method uses tensor along dimension internally * Note this will call dup() * @param idx the index of the tad to get * @param dimensions the dimensions to use * @return the tensor along dimension based on the index and dimensions * from the master array. */ INDArray getTad(int idx, int... dimensions); }