Class DeltaDocumentWindow


  • @ParametersAreNonnullByDefault
    public class DeltaDocumentWindow
    extends java.lang.Object
    Access window for delta document.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      org.exbin.auxiliary.paged_data.BinaryData copy()  
      org.exbin.auxiliary.paged_data.BinaryData copy​(long startFrom, long length)  
      void copyToArray​(long startFrom, byte[] target, int offset, int length)  
      byte getByte​(long position)  
      long getDataSize()  
      DataSegment getPartCopy​(long position, long length)
      Returns segment starting from given position or copy of part of the segment starting from given position up to the end of length.
      DataSegment getSegment​(long position)  
      void insert​(long startFrom, byte[] insertedData)  
      void insert​(long startFrom, byte[] insertedData, int insertedDataOffset, int insertedDataLength)  
      void insert​(long startFrom, long length)  
      void insert​(long startFrom, org.exbin.auxiliary.paged_data.BinaryData insertedData)  
      void insert​(long startFrom, org.exbin.auxiliary.paged_data.BinaryData insertedData, long insertedDataOffset, long insertedDataLength)  
      void insertSegment​(long startFrom, DataSegment insertedSegment)
      Directly inserts segment into given position.
      void insertUninitialized​(long startFrom, long length)  
      void remove​(long startFrom, long length)  
      void reset()  
      void setByte​(long position, byte value)  
      void setDataSize​(long dataSize)  
      void splitSegment​(long position)
      Splits current pointer segment on given absolute position.
      void validatePointerPosition()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • DeltaDocumentWindow

        public DeltaDocumentWindow​(DeltaDocument document)
    • Method Detail

      • getDataSize

        public long getDataSize()
      • getByte

        public byte getByte​(long position)
      • setByte

        public void setByte​(long position,
                            byte value)
      • insertUninitialized

        public void insertUninitialized​(long startFrom,
                                        long length)
      • insert

        public void insert​(long startFrom,
                           long length)
      • insert

        public void insert​(long startFrom,
                           byte[] insertedData)
      • insert

        public void insert​(long startFrom,
                           byte[] insertedData,
                           int insertedDataOffset,
                           int insertedDataLength)
      • insert

        public void insert​(long startFrom,
                           org.exbin.auxiliary.paged_data.BinaryData insertedData)
      • insert

        public void insert​(long startFrom,
                           org.exbin.auxiliary.paged_data.BinaryData insertedData,
                           long insertedDataOffset,
                           long insertedDataLength)
      • insertSegment

        public void insertSegment​(long startFrom,
                                  DataSegment insertedSegment)
        Directly inserts segment into given position.
        Parameters:
        startFrom - start position
        insertedSegment - inserted segment
      • remove

        public void remove​(long startFrom,
                           long length)
      • reset

        public void reset()
      • setDataSize

        public void setDataSize​(long dataSize)
      • copy

        @Nonnull
        public org.exbin.auxiliary.paged_data.BinaryData copy()
      • copy

        @Nonnull
        public org.exbin.auxiliary.paged_data.BinaryData copy​(long startFrom,
                                                              long length)
      • copyToArray

        public void copyToArray​(long startFrom,
                                byte[] target,
                                int offset,
                                int length)
      • splitSegment

        public void splitSegment​(long position)
        Splits current pointer segment on given absolute position.
        Parameters:
        position - split position
      • getSegment

        @Nullable
        public DataSegment getSegment​(long position)
      • getPartCopy

        @Nullable
        public DataSegment getPartCopy​(long position,
                                       long length)
        Returns segment starting from given position or copy of part of the segment starting from given position up to the end of length.
        Parameters:
        position - position
        length - length
        Returns:
        data segment or null
      • validatePointerPosition

        public void validatePointerPosition()