stevenh@27: package org.qmul.eecs.c4dm.sia.model; stevenh@27: stevenh@48: import java.util.ArrayList; stevenh@27: import java.util.List; stevenh@27: stevenh@27: public class VectorTable { stevenh@27: stevenh@48: private List vteList = new ArrayList(); stevenh@27: private int numDatapoints; // the number of datapoints used to create this Vector Table stevenh@27: stevenh@27: public VectorTableElement get(int i) stevenh@27: { stevenh@27: return vteList.get(i); stevenh@27: } stevenh@27: stevenh@48: public NDimensionalObject getVector(int fromIndex, int toIndex) stevenh@27: { stevenh@27: NDimensionalObject vector = new NDimensionalObject(); stevenh@27: stevenh@27: for (VectorTableElement vte : vteList) stevenh@27: { stevenh@48: if (vte.getFromDatapoint().getOrderedIndex() == fromIndex && vte.getToDatapoint().getOrderedIndex() == toIndex) stevenh@27: { stevenh@48: vector = vte; stevenh@27: break; stevenh@27: } stevenh@27: } stevenh@27: stevenh@27: return vector; stevenh@27: } stevenh@27: stevenh@27: private int vteListIndex(int i, int j) { stevenh@27: int vteListIndex = (i - 1) * numDatapoints + j - 1; stevenh@27: stevenh@27: return vteListIndex; stevenh@27: } stevenh@27: stevenh@27: public int getI(int i, int j) stevenh@27: { stevenh@27: int vteListIndex = vteListIndex(i, j); stevenh@27: int iResult = vteList.get(vteListIndex).getFromDatapoint().getOrderedIndex(); stevenh@27: stevenh@27: return iResult; stevenh@27: } stevenh@27: stevenh@27: public int size() stevenh@27: { stevenh@27: return vteList.size(); stevenh@27: } stevenh@27: stevenh@27: /** stevenh@27: * @return the vteList stevenh@27: */ stevenh@27: public List getVteList() { stevenh@27: return vteList; stevenh@27: } stevenh@27: stevenh@27: /** stevenh@27: * @param vteList the vteList to set stevenh@27: */ stevenh@27: public void setVteList(List vteList) { stevenh@27: this.vteList = vteList; stevenh@27: } stevenh@27: stevenh@27: /** stevenh@27: * @return the numDatapoints stevenh@27: */ stevenh@27: public int getNumDatapoints() { stevenh@27: return numDatapoints; stevenh@27: } stevenh@27: stevenh@27: /** stevenh@27: * @param numDatapoints the numDatapoints to set stevenh@27: */ stevenh@27: public void setNumDatapoints(int numDatapoints) { stevenh@27: this.numDatapoints = numDatapoints; stevenh@27: } stevenh@27: }