public abstract class MATEncoder
extends java.lang.Object
implements java.lang.AutoCloseable, java.io.Closeable
通用矩阵编码器
,
稀疏矩阵编码器
,
对称矩阵编码器
限定符和类型 | 类和说明 |
---|---|
static class |
MATEncoder.Builder
MATEncoder 构造器
|
限定符和类型 | 方法和说明 |
---|---|
abstract void |
close()
关闭编码器
|
abstract int |
columnIndexOf(edu.sysu.pmglab.container.ByteCode column)
查看指定列成员元素在列中的索引
|
int |
columnIndexOf(java.lang.String column)
查看指定列成员元素在列中的索引
|
abstract edu.sysu.pmglab.container.ByteCode |
columnNameOf(int index)
获取指定索引的列名
|
int |
getFieldNum()
获取字段数量
|
FieldType |
getFieldType(java.lang.String fieldName)
获取值类型
|
java.util.Map<java.lang.String,FieldType> |
getFieldTypes()
获取值类型
|
MatrixType |
getMatrixType()
获取矩阵类型
|
abstract edu.sysu.pmglab.container.File |
getOutputFile()
获取输出文件对象
|
abstract IRecord |
getRecord()
获取记录对象
|
abstract long |
getRecordNum()
获取已写入的记录数
|
boolean |
isClosed()
文件是否已关闭
|
static void |
merge(edu.sysu.pmglab.container.array.BaseArray<MATDecoder> decoders,
MATMeta meta,
edu.sysu.pmglab.container.File outputFile)
合并多个 MAT 文件
|
abstract int |
rowIndexOf(edu.sysu.pmglab.container.ByteCode row)
查看指定行成员元素在行中的索引
|
int |
rowIndexOf(java.lang.String row)
查看指定行成员元素在行中的索引
|
abstract edu.sysu.pmglab.container.ByteCode |
rowNameOf(int index)
获取指定索引的行名
|
abstract void |
write(IRecord record)
写入一条记录 (需要 ROW, COLUMN 作为行列信息)
|
MATEncoder |
writeMeta(edu.sysu.pmglab.container.ByteCode key,
edu.sysu.pmglab.container.ByteCode value)
写入注释信息
|
MATEncoder |
writeMeta(CCFMeta meta)
写入注释信息
|
MATEncoder |
writeMeta(java.lang.String key,
java.lang.String value)
写入注释信息
|
public abstract edu.sysu.pmglab.container.File getOutputFile()
public final java.util.Map<java.lang.String,FieldType> getFieldTypes()
public final FieldType getFieldType(java.lang.String fieldName)
fieldName
- 指定的列名public final MatrixType getMatrixType()
public abstract void write(IRecord record) throws java.io.IOException
record
- 记录java.io.IOException
- 来自 CCF 的 IO 异常public final MATEncoder writeMeta(java.lang.String key, java.lang.String value)
key
- 注释键value
- 注释值public final MATEncoder writeMeta(edu.sysu.pmglab.container.ByteCode key, edu.sysu.pmglab.container.ByteCode value)
key
- 注释键value
- 注释值public final MATEncoder writeMeta(CCFMeta meta)
meta
- 注释对象public abstract IRecord getRecord()
public abstract edu.sysu.pmglab.container.ByteCode rowNameOf(int index)
index
- 行索引public abstract edu.sysu.pmglab.container.ByteCode columnNameOf(int index)
index
- 列索引public final int rowIndexOf(java.lang.String row)
row
- 行成员public abstract int rowIndexOf(edu.sysu.pmglab.container.ByteCode row)
row
- 行成员public final int columnIndexOf(java.lang.String column)
column
- 列成员public abstract int columnIndexOf(edu.sysu.pmglab.container.ByteCode column)
column
- 列成员public abstract long getRecordNum()
public int getFieldNum()
public abstract void close() throws java.io.IOException
close
在接口中 java.io.Closeable
close
在接口中 java.lang.AutoCloseable
java.io.IOException
- 来自 CCF 的 IO 异常public boolean isClosed()
public static void merge(edu.sysu.pmglab.container.array.BaseArray<MATDecoder> decoders, MATMeta meta, edu.sysu.pmglab.container.File outputFile) throws java.io.IOException
decoders
- 解码器meta
- 注入额外注释字段outputFile
- 输出文件对象java.io.IOException
- 处理过程中的 IO 异常