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 Type
    Method
    Description
    void
    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.
    Input blocks of readable data involved in this step, may be data blocks or parity blocks.
    Output blocks of writable buffers involved in this step, may be data blocks or parity blocks.
    void
    performCoding(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

      void performCoding(ECChunk[] inputChunks, ECChunk[] outputChunks) throws IOException
      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.