code: public void decode1D(byte[] buffer, byte[] compData,
      int startX, int height) {
          this.data = compData;
          
          int lineOffset = 0;
          int scanlineStride = (w + 7)/8;
          
          bitPointer = 0;
          bytePointer = 0;
          
          for (int i = 0; i < height; i++) {
              decodeNextScanline(buffer, lineOffset, startX);
              lineOffset += scanlineStride;
          }
      }
docs: One-dimensional decoding methods