Package com.qfs.chunk

Interface IChunkBinding

  • All Known Implementing Classes:
    ChunkSetBinding

    public interface IChunkBinding
    Represent the binding between two chunks.
    Author:
    ActiveViam
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void copy​(int srcPos, int destPos, int length)
      Uses the binding to contiguously copy data from the source to the destination.
      void transfer​(int[] rowsMapping, int numRows)
      Transfers a set of rows from our source chunk towards our destination chunk.
      void transferContiguously​(int[] sourceRows, int numRows)
      Transfers a number of rows from the source chunk and into the destination chunk, where they are written from 0 to n.
    • Method Detail

      • copy

        void copy​(int srcPos,
                  int destPos,
                  int length)
        Uses the binding to contiguously copy data from the source to the destination.
        Parameters:
        srcPos - start position in the source
        destPos - start position in the destination
        length - length of the copy
      • transferContiguously

        void transferContiguously​(int[] sourceRows,
                                  int numRows)
        Transfers a number of rows from the source chunk and into the destination chunk, where they are written from 0 to n.
        Parameters:
        sourceRows - the indexes of the rows to transfer the data from
        numRows - the number of rows to transfer
      • transfer

        void transfer​(int[] rowsMapping,
                      int numRows)
        Transfers a set of rows from our source chunk towards our destination chunk.

        The mapping from the source rows to the target rows is described with an array of 2*n slots. Each even slot contains the index of the row to be copied from the source chunk and the following odd slot contains the index of the row into which the source data will be transferred.

        Parameters:
        rowsMapping - the mapping from source rows to target rows, as explained above
        numRows - the number of rows to transfer