Interface ErasureCodingStep
- All Known Implementing Classes:
ErasureDecodingStep,ErasureEncodingStep,HHErasureCodingStep,HHXORErasureDecodingStep,HHXORErasureEncodingStep
@Private
public interface ErasureCodingStep
Erasure coding step that's involved in encoding/decoding of a block group.
-
Method Summary
Modifier and TypeMethodDescriptionvoidfinish()Notify erasure coder that all the chunks of input blocks are processed so the coder can be able to update internal states, considering next step.ECBlock[]Input blocks of readable data involved in this step, may be data blocks or parity blocks.ECBlock[]Output blocks of writable buffers involved in this step, may be data blocks or parity blocks.voidperformCoding(ECChunk[] inputChunks, ECChunk[] outputChunks) Perform encoding or decoding given the input chunks, and generated results will be written to the output chunks.
-
Method Details
-
getInputBlocks
ECBlock[] getInputBlocks()Input blocks of readable data involved in this step, may be data blocks or parity blocks.- Returns:
- input blocks
-
getOutputBlocks
ECBlock[] getOutputBlocks()Output blocks of writable buffers involved in this step, may be data blocks or parity blocks.- Returns:
- output blocks
-
performCoding
Perform encoding or decoding given the input chunks, and generated results will be written to the output chunks.- Parameters:
inputChunks- inputChunks.outputChunks- outputChunks.- Throws:
IOException- raised on errors performing I/O.
-
finish
void finish()Notify erasure coder that all the chunks of input blocks are processed so the coder can be able to update internal states, considering next step.
-