view src/org/qmul/eecs/c4dm/sia/model/VectorTable.java @ 94:fedf516f6a78 tip

test file
author stevenh
date Mon, 29 Dec 2014 15:16:22 +0000
parents ad9ef7637caa
children
line wrap: on
line source
package org.qmul.eecs.c4dm.sia.model;

import java.util.ArrayList;
import java.util.List;

public class VectorTable {

	private List<VectorTableElement> vteList = new ArrayList<VectorTableElement>();
	private int numDatapoints; // the number of datapoints used to create this Vector Table
	
	public VectorTableElement get(int i)
	{
		return vteList.get(i);
	}
	
	public NDimensionalObject getVector(int fromIndex, int toIndex)
	{
		NDimensionalObject vector = new NDimensionalObject();
		
		for (VectorTableElement vte : vteList)
		{
			if (vte.getFromDatapoint().getOrderedIndex() == fromIndex && vte.getToDatapoint().getOrderedIndex() == toIndex)
			{
				vector = vte;
				break;
			}
		}

		return vector;
	}

	private int vteListIndex(int i, int j) {
		int vteListIndex = (i - 1) * numDatapoints + j - 1;

		return vteListIndex;
	}
	
	public int getI(int i, int j)
	{
		int vteListIndex = vteListIndex(i, j);
		int iResult = vteList.get(vteListIndex).getFromDatapoint().getOrderedIndex();
		
		return iResult;
	}
	
	public int size()
	{
		return vteList.size();
	}
	
	/**
	 * @return the vteList
	 */
	public List<VectorTableElement> getVteList() {
		return vteList;
	}
	
	/**
	 * @param vteList the vteList to set
	 */
	public void setVteList(List<VectorTableElement> vteList) {
		this.vteList = vteList;
	}
	
	/**
	 * @return the numDatapoints
	 */
	public int getNumDatapoints() {
		return numDatapoints;
	}
	
	/**
	 * @param numDatapoints the numDatapoints to set
	 */
	public void setNumDatapoints(int numDatapoints) {
		this.numDatapoints = numDatapoints;
	}
}