
public class OnDiskUpperTriangleMatrix extends Object
| Modifier and Type | Field and Description | 
|---|---|
private OnDiskArray | 
array
Data storage 
 | 
private int | 
matrixsize
Size of the matrix 
 | 
private static long | 
serialVersionUID
Serial number, also used for generating a magic 
 | 
private static int | 
TRIANGLE_HEADER_SIZE
Size of this class' header 
 | 
| Constructor and Description | 
|---|
OnDiskUpperTriangleMatrix(File filename,
                         int magicseed,
                         int extraheadersize,
                         int recordsize,
                         boolean writable)
Constructor to access an existing array. 
 | 
OnDiskUpperTriangleMatrix(File filename,
                         int magicseed,
                         int extraheadersize,
                         int recordsize,
                         int matrixsize)
Constructor to access a new array. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
private static int | 
arraysize(int matrixsize)
Compute the size of the needed backing array from the matrix dimensions. 
 | 
void | 
close()
Close the matrix file. 
 | 
private int | 
computeOffset(int x,
             int y)
Compute the offset within the file. 
 | 
int | 
getMatrixSize()
Query the size of the matrix. 
 | 
ByteBuffer | 
getRecordBuffer(int x,
               int y)
Get a record buffer 
 | 
void | 
resizeMatrix(int newsize)
Resize the matrix to cover newsize x newsize. 
 | 
private static final long serialVersionUID
private static final int TRIANGLE_HEADER_SIZE
private int matrixsize
private OnDiskArray array
public OnDiskUpperTriangleMatrix(File filename, int magicseed, int extraheadersize, int recordsize, boolean writable) throws IOException
filename - File namemagicseed - Magic numberextraheadersize - Size of extra header datarecordsize - Record sizewritable - flag to open writableIOException - on IO errorspublic OnDiskUpperTriangleMatrix(File filename, int magicseed, int extraheadersize, int recordsize, int matrixsize) throws IOException
filename - File namemagicseed - Magic numberextraheadersize - Size of extra header datarecordsize - Record sizematrixsize - Size of matrix to storeIOException - on IO errorspublic void resizeMatrix(int newsize)
                  throws IOException
newsize - New matrix size.IOException - on IO errorsprivate static int arraysize(int matrixsize)
matrixsize - size of the matrixprivate int computeOffset(int x,
                int y)
x - First coordinatey - Second coordinatepublic ByteBuffer getRecordBuffer(int x, int y) throws IOException
x - First coordinatey - Second coordinateIOException - on IO errorspublic void close()
           throws IOException
IOException - on IO errorspublic int getMatrixSize()