All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos Maven / Gradle / Ivy

// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: DataBuffer.proto

package org.locationtech.geowave.adapter.raster.protobuf;

public final class DataBufferProtos {
  private DataBufferProtos() {}
  public static void registerAllExtensions(
      com.google.protobuf.ExtensionRegistry registry) {
  }
  public interface SignedIntArrayOrBuilder
      extends com.google.protobuf.MessageOrBuilder {

    // repeated sint32 samples = 1 [packed = true];
    /**
     * repeated sint32 samples = 1 [packed = true];
     */
    java.util.List getSamplesList();
    /**
     * repeated sint32 samples = 1 [packed = true];
     */
    int getSamplesCount();
    /**
     * repeated sint32 samples = 1 [packed = true];
     */
    int getSamples(int index);
  }
  /**
   * Protobuf type {@code SignedIntArray}
   */
  public static final class SignedIntArray extends
      com.google.protobuf.GeneratedMessage
      implements SignedIntArrayOrBuilder {
    // Use SignedIntArray.newBuilder() to construct.
    private SignedIntArray(com.google.protobuf.GeneratedMessage.Builder builder) {
      super(builder);
      this.unknownFields = builder.getUnknownFields();
    }
    private SignedIntArray(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

    private static final SignedIntArray defaultInstance;
    public static SignedIntArray getDefaultInstance() {
      return defaultInstance;
    }

    public SignedIntArray getDefaultInstanceForType() {
      return defaultInstance;
    }

    private final com.google.protobuf.UnknownFieldSet unknownFields;
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
        getUnknownFields() {
      return this.unknownFields;
    }
    private SignedIntArray(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      initFields();
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            default: {
              if (!parseUnknownField(input, unknownFields,
                                     extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
            case 8: {
              if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                samples_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000001;
              }
              samples_.add(input.readSInt32());
              break;
            }
            case 10: {
              int length = input.readRawVarint32();
              int limit = input.pushLimit(length);
              if (!((mutable_bitField0_ & 0x00000001) == 0x00000001) && input.getBytesUntilLimit() > 0) {
                samples_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000001;
              }
              while (input.getBytesUntilLimit() > 0) {
                samples_.add(input.readSInt32());
              }
              input.popLimit(limit);
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e.getMessage()).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
          samples_ = java.util.Collections.unmodifiableList(samples_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_SignedIntArray_descriptor;
    }

    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_SignedIntArray_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray.class, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray.Builder.class);
    }

    public static com.google.protobuf.Parser PARSER =
        new com.google.protobuf.AbstractParser() {
      public SignedIntArray parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new SignedIntArray(input, extensionRegistry);
      }
    };

    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }

    // repeated sint32 samples = 1 [packed = true];
    public static final int SAMPLES_FIELD_NUMBER = 1;
    private java.util.List samples_;
    /**
     * repeated sint32 samples = 1 [packed = true];
     */
    public java.util.List
        getSamplesList() {
      return samples_;
    }
    /**
     * repeated sint32 samples = 1 [packed = true];
     */
    public int getSamplesCount() {
      return samples_.size();
    }
    /**
     * repeated sint32 samples = 1 [packed = true];
     */
    public int getSamples(int index) {
      return samples_.get(index);
    }
    private int samplesMemoizedSerializedSize = -1;

    private void initFields() {
      samples_ = java.util.Collections.emptyList();
    }
    private byte memoizedIsInitialized = -1;
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized != -1) return isInitialized == 1;

      memoizedIsInitialized = 1;
      return true;
    }

    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      getSerializedSize();
      if (getSamplesList().size() > 0) {
        output.writeRawVarint32(10);
        output.writeRawVarint32(samplesMemoizedSerializedSize);
      }
      for (int i = 0; i < samples_.size(); i++) {
        output.writeSInt32NoTag(samples_.get(i));
      }
      getUnknownFields().writeTo(output);
    }

    private int memoizedSerializedSize = -1;
    public int getSerializedSize() {
      int size = memoizedSerializedSize;
      if (size != -1) return size;

      size = 0;
      {
        int dataSize = 0;
        for (int i = 0; i < samples_.size(); i++) {
          dataSize += com.google.protobuf.CodedOutputStream
            .computeSInt32SizeNoTag(samples_.get(i));
        }
        size += dataSize;
        if (!getSamplesList().isEmpty()) {
          size += 1;
          size += com.google.protobuf.CodedOutputStream
              .computeInt32SizeNoTag(dataSize);
        }
        samplesMemoizedSerializedSize = dataSize;
      }
      size += getUnknownFields().getSerializedSize();
      memoizedSerializedSize = size;
      return size;
    }

    private static final long serialVersionUID = 0L;
    @java.lang.Override
    protected java.lang.Object writeReplace()
        throws java.io.ObjectStreamException {
      return super.writeReplace();
    }

    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }

    public static Builder newBuilder() { return Builder.create(); }
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray prototype) {
      return newBuilder().mergeFrom(prototype);
    }
    public Builder toBuilder() { return newBuilder(this); }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code SignedIntArray}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessage.Builder
       implements org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArrayOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_SignedIntArray_descriptor;
      }

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_SignedIntArray_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray.class, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray.Builder.class);
      }

      // Construct using org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
        }
      }
      private static Builder create() {
        return new Builder();
      }

      public Builder clear() {
        super.clear();
        samples_ = java.util.Collections.emptyList();
        bitField0_ = (bitField0_ & ~0x00000001);
        return this;
      }

      public Builder clone() {
        return create().mergeFrom(buildPartial());
      }

      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_SignedIntArray_descriptor;
      }

      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray getDefaultInstanceForType() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray.getDefaultInstance();
      }

      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray build() {
        org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray buildPartial() {
        org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray result = new org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray(this);
        int from_bitField0_ = bitField0_;
        if (((bitField0_ & 0x00000001) == 0x00000001)) {
          samples_ = java.util.Collections.unmodifiableList(samples_);
          bitField0_ = (bitField0_ & ~0x00000001);
        }
        result.samples_ = samples_;
        onBuilt();
        return result;
      }

      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray) {
          return mergeFrom((org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray other) {
        if (other == org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray.getDefaultInstance()) return this;
        if (!other.samples_.isEmpty()) {
          if (samples_.isEmpty()) {
            samples_ = other.samples_;
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            ensureSamplesIsMutable();
            samples_.addAll(other.samples_);
          }
          onChanged();
        }
        this.mergeUnknownFields(other.getUnknownFields());
        return this;
      }

      public final boolean isInitialized() {
        return true;
      }

      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray) e.getUnfinishedMessage();
          throw e;
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      // repeated sint32 samples = 1 [packed = true];
      private java.util.List samples_ = java.util.Collections.emptyList();
      private void ensureSamplesIsMutable() {
        if (!((bitField0_ & 0x00000001) == 0x00000001)) {
          samples_ = new java.util.ArrayList(samples_);
          bitField0_ |= 0x00000001;
         }
      }
      /**
       * repeated sint32 samples = 1 [packed = true];
       */
      public java.util.List
          getSamplesList() {
        return java.util.Collections.unmodifiableList(samples_);
      }
      /**
       * repeated sint32 samples = 1 [packed = true];
       */
      public int getSamplesCount() {
        return samples_.size();
      }
      /**
       * repeated sint32 samples = 1 [packed = true];
       */
      public int getSamples(int index) {
        return samples_.get(index);
      }
      /**
       * repeated sint32 samples = 1 [packed = true];
       */
      public Builder setSamples(
          int index, int value) {
        ensureSamplesIsMutable();
        samples_.set(index, value);
        onChanged();
        return this;
      }
      /**
       * repeated sint32 samples = 1 [packed = true];
       */
      public Builder addSamples(int value) {
        ensureSamplesIsMutable();
        samples_.add(value);
        onChanged();
        return this;
      }
      /**
       * repeated sint32 samples = 1 [packed = true];
       */
      public Builder addAllSamples(
          java.lang.Iterable values) {
        ensureSamplesIsMutable();
        super.addAll(values, samples_);
        onChanged();
        return this;
      }
      /**
       * repeated sint32 samples = 1 [packed = true];
       */
      public Builder clearSamples() {
        samples_ = java.util.Collections.emptyList();
        bitField0_ = (bitField0_ & ~0x00000001);
        onChanged();
        return this;
      }

      // @@protoc_insertion_point(builder_scope:SignedIntArray)
    }

    static {
      defaultInstance = new SignedIntArray(true);
      defaultInstance.initFields();
    }

    // @@protoc_insertion_point(class_scope:SignedIntArray)
  }

  public interface DoubleArrayOrBuilder
      extends com.google.protobuf.MessageOrBuilder {

    // repeated double samples = 1 [packed = true];
    /**
     * repeated double samples = 1 [packed = true];
     */
    java.util.List getSamplesList();
    /**
     * repeated double samples = 1 [packed = true];
     */
    int getSamplesCount();
    /**
     * repeated double samples = 1 [packed = true];
     */
    double getSamples(int index);
  }
  /**
   * Protobuf type {@code DoubleArray}
   */
  public static final class DoubleArray extends
      com.google.protobuf.GeneratedMessage
      implements DoubleArrayOrBuilder {
    // Use DoubleArray.newBuilder() to construct.
    private DoubleArray(com.google.protobuf.GeneratedMessage.Builder builder) {
      super(builder);
      this.unknownFields = builder.getUnknownFields();
    }
    private DoubleArray(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

    private static final DoubleArray defaultInstance;
    public static DoubleArray getDefaultInstance() {
      return defaultInstance;
    }

    public DoubleArray getDefaultInstanceForType() {
      return defaultInstance;
    }

    private final com.google.protobuf.UnknownFieldSet unknownFields;
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
        getUnknownFields() {
      return this.unknownFields;
    }
    private DoubleArray(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      initFields();
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            default: {
              if (!parseUnknownField(input, unknownFields,
                                     extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
            case 9: {
              if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                samples_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000001;
              }
              samples_.add(input.readDouble());
              break;
            }
            case 10: {
              int length = input.readRawVarint32();
              int limit = input.pushLimit(length);
              if (!((mutable_bitField0_ & 0x00000001) == 0x00000001) && input.getBytesUntilLimit() > 0) {
                samples_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000001;
              }
              while (input.getBytesUntilLimit() > 0) {
                samples_.add(input.readDouble());
              }
              input.popLimit(limit);
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e.getMessage()).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
          samples_ = java.util.Collections.unmodifiableList(samples_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_DoubleArray_descriptor;
    }

    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_DoubleArray_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray.class, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray.Builder.class);
    }

    public static com.google.protobuf.Parser PARSER =
        new com.google.protobuf.AbstractParser() {
      public DoubleArray parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new DoubleArray(input, extensionRegistry);
      }
    };

    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }

    // repeated double samples = 1 [packed = true];
    public static final int SAMPLES_FIELD_NUMBER = 1;
    private java.util.List samples_;
    /**
     * repeated double samples = 1 [packed = true];
     */
    public java.util.List
        getSamplesList() {
      return samples_;
    }
    /**
     * repeated double samples = 1 [packed = true];
     */
    public int getSamplesCount() {
      return samples_.size();
    }
    /**
     * repeated double samples = 1 [packed = true];
     */
    public double getSamples(int index) {
      return samples_.get(index);
    }
    private int samplesMemoizedSerializedSize = -1;

    private void initFields() {
      samples_ = java.util.Collections.emptyList();
    }
    private byte memoizedIsInitialized = -1;
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized != -1) return isInitialized == 1;

      memoizedIsInitialized = 1;
      return true;
    }

    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      getSerializedSize();
      if (getSamplesList().size() > 0) {
        output.writeRawVarint32(10);
        output.writeRawVarint32(samplesMemoizedSerializedSize);
      }
      for (int i = 0; i < samples_.size(); i++) {
        output.writeDoubleNoTag(samples_.get(i));
      }
      getUnknownFields().writeTo(output);
    }

    private int memoizedSerializedSize = -1;
    public int getSerializedSize() {
      int size = memoizedSerializedSize;
      if (size != -1) return size;

      size = 0;
      {
        int dataSize = 0;
        dataSize = 8 * getSamplesList().size();
        size += dataSize;
        if (!getSamplesList().isEmpty()) {
          size += 1;
          size += com.google.protobuf.CodedOutputStream
              .computeInt32SizeNoTag(dataSize);
        }
        samplesMemoizedSerializedSize = dataSize;
      }
      size += getUnknownFields().getSerializedSize();
      memoizedSerializedSize = size;
      return size;
    }

    private static final long serialVersionUID = 0L;
    @java.lang.Override
    protected java.lang.Object writeReplace()
        throws java.io.ObjectStreamException {
      return super.writeReplace();
    }

    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }

    public static Builder newBuilder() { return Builder.create(); }
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray prototype) {
      return newBuilder().mergeFrom(prototype);
    }
    public Builder toBuilder() { return newBuilder(this); }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code DoubleArray}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessage.Builder
       implements org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArrayOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_DoubleArray_descriptor;
      }

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_DoubleArray_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray.class, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray.Builder.class);
      }

      // Construct using org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
        }
      }
      private static Builder create() {
        return new Builder();
      }

      public Builder clear() {
        super.clear();
        samples_ = java.util.Collections.emptyList();
        bitField0_ = (bitField0_ & ~0x00000001);
        return this;
      }

      public Builder clone() {
        return create().mergeFrom(buildPartial());
      }

      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_DoubleArray_descriptor;
      }

      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray getDefaultInstanceForType() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray.getDefaultInstance();
      }

      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray build() {
        org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray buildPartial() {
        org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray result = new org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray(this);
        int from_bitField0_ = bitField0_;
        if (((bitField0_ & 0x00000001) == 0x00000001)) {
          samples_ = java.util.Collections.unmodifiableList(samples_);
          bitField0_ = (bitField0_ & ~0x00000001);
        }
        result.samples_ = samples_;
        onBuilt();
        return result;
      }

      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray) {
          return mergeFrom((org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray other) {
        if (other == org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray.getDefaultInstance()) return this;
        if (!other.samples_.isEmpty()) {
          if (samples_.isEmpty()) {
            samples_ = other.samples_;
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            ensureSamplesIsMutable();
            samples_.addAll(other.samples_);
          }
          onChanged();
        }
        this.mergeUnknownFields(other.getUnknownFields());
        return this;
      }

      public final boolean isInitialized() {
        return true;
      }

      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray) e.getUnfinishedMessage();
          throw e;
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      // repeated double samples = 1 [packed = true];
      private java.util.List samples_ = java.util.Collections.emptyList();
      private void ensureSamplesIsMutable() {
        if (!((bitField0_ & 0x00000001) == 0x00000001)) {
          samples_ = new java.util.ArrayList(samples_);
          bitField0_ |= 0x00000001;
         }
      }
      /**
       * repeated double samples = 1 [packed = true];
       */
      public java.util.List
          getSamplesList() {
        return java.util.Collections.unmodifiableList(samples_);
      }
      /**
       * repeated double samples = 1 [packed = true];
       */
      public int getSamplesCount() {
        return samples_.size();
      }
      /**
       * repeated double samples = 1 [packed = true];
       */
      public double getSamples(int index) {
        return samples_.get(index);
      }
      /**
       * repeated double samples = 1 [packed = true];
       */
      public Builder setSamples(
          int index, double value) {
        ensureSamplesIsMutable();
        samples_.set(index, value);
        onChanged();
        return this;
      }
      /**
       * repeated double samples = 1 [packed = true];
       */
      public Builder addSamples(double value) {
        ensureSamplesIsMutable();
        samples_.add(value);
        onChanged();
        return this;
      }
      /**
       * repeated double samples = 1 [packed = true];
       */
      public Builder addAllSamples(
          java.lang.Iterable values) {
        ensureSamplesIsMutable();
        super.addAll(values, samples_);
        onChanged();
        return this;
      }
      /**
       * repeated double samples = 1 [packed = true];
       */
      public Builder clearSamples() {
        samples_ = java.util.Collections.emptyList();
        bitField0_ = (bitField0_ & ~0x00000001);
        onChanged();
        return this;
      }

      // @@protoc_insertion_point(builder_scope:DoubleArray)
    }

    static {
      defaultInstance = new DoubleArray(true);
      defaultInstance.initFields();
    }

    // @@protoc_insertion_point(class_scope:DoubleArray)
  }

  public interface FloatArrayOrBuilder
      extends com.google.protobuf.MessageOrBuilder {

    // repeated float samples = 1 [packed = true];
    /**
     * repeated float samples = 1 [packed = true];
     */
    java.util.List getSamplesList();
    /**
     * repeated float samples = 1 [packed = true];
     */
    int getSamplesCount();
    /**
     * repeated float samples = 1 [packed = true];
     */
    float getSamples(int index);
  }
  /**
   * Protobuf type {@code FloatArray}
   */
  public static final class FloatArray extends
      com.google.protobuf.GeneratedMessage
      implements FloatArrayOrBuilder {
    // Use FloatArray.newBuilder() to construct.
    private FloatArray(com.google.protobuf.GeneratedMessage.Builder builder) {
      super(builder);
      this.unknownFields = builder.getUnknownFields();
    }
    private FloatArray(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

    private static final FloatArray defaultInstance;
    public static FloatArray getDefaultInstance() {
      return defaultInstance;
    }

    public FloatArray getDefaultInstanceForType() {
      return defaultInstance;
    }

    private final com.google.protobuf.UnknownFieldSet unknownFields;
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
        getUnknownFields() {
      return this.unknownFields;
    }
    private FloatArray(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      initFields();
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            default: {
              if (!parseUnknownField(input, unknownFields,
                                     extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
            case 13: {
              if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                samples_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000001;
              }
              samples_.add(input.readFloat());
              break;
            }
            case 10: {
              int length = input.readRawVarint32();
              int limit = input.pushLimit(length);
              if (!((mutable_bitField0_ & 0x00000001) == 0x00000001) && input.getBytesUntilLimit() > 0) {
                samples_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000001;
              }
              while (input.getBytesUntilLimit() > 0) {
                samples_.add(input.readFloat());
              }
              input.popLimit(limit);
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e.getMessage()).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
          samples_ = java.util.Collections.unmodifiableList(samples_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_FloatArray_descriptor;
    }

    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_FloatArray_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray.class, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray.Builder.class);
    }

    public static com.google.protobuf.Parser PARSER =
        new com.google.protobuf.AbstractParser() {
      public FloatArray parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new FloatArray(input, extensionRegistry);
      }
    };

    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }

    // repeated float samples = 1 [packed = true];
    public static final int SAMPLES_FIELD_NUMBER = 1;
    private java.util.List samples_;
    /**
     * repeated float samples = 1 [packed = true];
     */
    public java.util.List
        getSamplesList() {
      return samples_;
    }
    /**
     * repeated float samples = 1 [packed = true];
     */
    public int getSamplesCount() {
      return samples_.size();
    }
    /**
     * repeated float samples = 1 [packed = true];
     */
    public float getSamples(int index) {
      return samples_.get(index);
    }
    private int samplesMemoizedSerializedSize = -1;

    private void initFields() {
      samples_ = java.util.Collections.emptyList();
    }
    private byte memoizedIsInitialized = -1;
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized != -1) return isInitialized == 1;

      memoizedIsInitialized = 1;
      return true;
    }

    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      getSerializedSize();
      if (getSamplesList().size() > 0) {
        output.writeRawVarint32(10);
        output.writeRawVarint32(samplesMemoizedSerializedSize);
      }
      for (int i = 0; i < samples_.size(); i++) {
        output.writeFloatNoTag(samples_.get(i));
      }
      getUnknownFields().writeTo(output);
    }

    private int memoizedSerializedSize = -1;
    public int getSerializedSize() {
      int size = memoizedSerializedSize;
      if (size != -1) return size;

      size = 0;
      {
        int dataSize = 0;
        dataSize = 4 * getSamplesList().size();
        size += dataSize;
        if (!getSamplesList().isEmpty()) {
          size += 1;
          size += com.google.protobuf.CodedOutputStream
              .computeInt32SizeNoTag(dataSize);
        }
        samplesMemoizedSerializedSize = dataSize;
      }
      size += getUnknownFields().getSerializedSize();
      memoizedSerializedSize = size;
      return size;
    }

    private static final long serialVersionUID = 0L;
    @java.lang.Override
    protected java.lang.Object writeReplace()
        throws java.io.ObjectStreamException {
      return super.writeReplace();
    }

    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }

    public static Builder newBuilder() { return Builder.create(); }
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray prototype) {
      return newBuilder().mergeFrom(prototype);
    }
    public Builder toBuilder() { return newBuilder(this); }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code FloatArray}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessage.Builder
       implements org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArrayOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_FloatArray_descriptor;
      }

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_FloatArray_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray.class, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray.Builder.class);
      }

      // Construct using org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
        }
      }
      private static Builder create() {
        return new Builder();
      }

      public Builder clear() {
        super.clear();
        samples_ = java.util.Collections.emptyList();
        bitField0_ = (bitField0_ & ~0x00000001);
        return this;
      }

      public Builder clone() {
        return create().mergeFrom(buildPartial());
      }

      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_FloatArray_descriptor;
      }

      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray getDefaultInstanceForType() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray.getDefaultInstance();
      }

      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray build() {
        org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray buildPartial() {
        org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray result = new org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray(this);
        int from_bitField0_ = bitField0_;
        if (((bitField0_ & 0x00000001) == 0x00000001)) {
          samples_ = java.util.Collections.unmodifiableList(samples_);
          bitField0_ = (bitField0_ & ~0x00000001);
        }
        result.samples_ = samples_;
        onBuilt();
        return result;
      }

      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray) {
          return mergeFrom((org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray other) {
        if (other == org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray.getDefaultInstance()) return this;
        if (!other.samples_.isEmpty()) {
          if (samples_.isEmpty()) {
            samples_ = other.samples_;
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            ensureSamplesIsMutable();
            samples_.addAll(other.samples_);
          }
          onChanged();
        }
        this.mergeUnknownFields(other.getUnknownFields());
        return this;
      }

      public final boolean isInitialized() {
        return true;
      }

      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray) e.getUnfinishedMessage();
          throw e;
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      // repeated float samples = 1 [packed = true];
      private java.util.List samples_ = java.util.Collections.emptyList();
      private void ensureSamplesIsMutable() {
        if (!((bitField0_ & 0x00000001) == 0x00000001)) {
          samples_ = new java.util.ArrayList(samples_);
          bitField0_ |= 0x00000001;
         }
      }
      /**
       * repeated float samples = 1 [packed = true];
       */
      public java.util.List
          getSamplesList() {
        return java.util.Collections.unmodifiableList(samples_);
      }
      /**
       * repeated float samples = 1 [packed = true];
       */
      public int getSamplesCount() {
        return samples_.size();
      }
      /**
       * repeated float samples = 1 [packed = true];
       */
      public float getSamples(int index) {
        return samples_.get(index);
      }
      /**
       * repeated float samples = 1 [packed = true];
       */
      public Builder setSamples(
          int index, float value) {
        ensureSamplesIsMutable();
        samples_.set(index, value);
        onChanged();
        return this;
      }
      /**
       * repeated float samples = 1 [packed = true];
       */
      public Builder addSamples(float value) {
        ensureSamplesIsMutable();
        samples_.add(value);
        onChanged();
        return this;
      }
      /**
       * repeated float samples = 1 [packed = true];
       */
      public Builder addAllSamples(
          java.lang.Iterable values) {
        ensureSamplesIsMutable();
        super.addAll(values, samples_);
        onChanged();
        return this;
      }
      /**
       * repeated float samples = 1 [packed = true];
       */
      public Builder clearSamples() {
        samples_ = java.util.Collections.emptyList();
        bitField0_ = (bitField0_ & ~0x00000001);
        onChanged();
        return this;
      }

      // @@protoc_insertion_point(builder_scope:FloatArray)
    }

    static {
      defaultInstance = new FloatArray(true);
      defaultInstance.initFields();
    }

    // @@protoc_insertion_point(class_scope:FloatArray)
  }

  public interface SignedIntDataBufferOrBuilder
      extends com.google.protobuf.MessageOrBuilder {

    // repeated .SignedIntArray banks = 1;
    /**
     * repeated .SignedIntArray banks = 1;
     */
    java.util.List 
        getBanksList();
    /**
     * repeated .SignedIntArray banks = 1;
     */
    org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray getBanks(int index);
    /**
     * repeated .SignedIntArray banks = 1;
     */
    int getBanksCount();
    /**
     * repeated .SignedIntArray banks = 1;
     */
    java.util.List 
        getBanksOrBuilderList();
    /**
     * repeated .SignedIntArray banks = 1;
     */
    org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArrayOrBuilder getBanksOrBuilder(
        int index);
  }
  /**
   * Protobuf type {@code SignedIntDataBuffer}
   */
  public static final class SignedIntDataBuffer extends
      com.google.protobuf.GeneratedMessage
      implements SignedIntDataBufferOrBuilder {
    // Use SignedIntDataBuffer.newBuilder() to construct.
    private SignedIntDataBuffer(com.google.protobuf.GeneratedMessage.Builder builder) {
      super(builder);
      this.unknownFields = builder.getUnknownFields();
    }
    private SignedIntDataBuffer(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

    private static final SignedIntDataBuffer defaultInstance;
    public static SignedIntDataBuffer getDefaultInstance() {
      return defaultInstance;
    }

    public SignedIntDataBuffer getDefaultInstanceForType() {
      return defaultInstance;
    }

    private final com.google.protobuf.UnknownFieldSet unknownFields;
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
        getUnknownFields() {
      return this.unknownFields;
    }
    private SignedIntDataBuffer(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      initFields();
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            default: {
              if (!parseUnknownField(input, unknownFields,
                                     extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
            case 10: {
              if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                banks_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000001;
              }
              banks_.add(input.readMessage(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray.PARSER, extensionRegistry));
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e.getMessage()).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
          banks_ = java.util.Collections.unmodifiableList(banks_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_SignedIntDataBuffer_descriptor;
    }

    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_SignedIntDataBuffer_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer.class, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer.Builder.class);
    }

    public static com.google.protobuf.Parser PARSER =
        new com.google.protobuf.AbstractParser() {
      public SignedIntDataBuffer parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new SignedIntDataBuffer(input, extensionRegistry);
      }
    };

    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }

    // repeated .SignedIntArray banks = 1;
    public static final int BANKS_FIELD_NUMBER = 1;
    private java.util.List banks_;
    /**
     * repeated .SignedIntArray banks = 1;
     */
    public java.util.List getBanksList() {
      return banks_;
    }
    /**
     * repeated .SignedIntArray banks = 1;
     */
    public java.util.List 
        getBanksOrBuilderList() {
      return banks_;
    }
    /**
     * repeated .SignedIntArray banks = 1;
     */
    public int getBanksCount() {
      return banks_.size();
    }
    /**
     * repeated .SignedIntArray banks = 1;
     */
    public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray getBanks(int index) {
      return banks_.get(index);
    }
    /**
     * repeated .SignedIntArray banks = 1;
     */
    public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArrayOrBuilder getBanksOrBuilder(
        int index) {
      return banks_.get(index);
    }

    private void initFields() {
      banks_ = java.util.Collections.emptyList();
    }
    private byte memoizedIsInitialized = -1;
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized != -1) return isInitialized == 1;

      memoizedIsInitialized = 1;
      return true;
    }

    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      getSerializedSize();
      for (int i = 0; i < banks_.size(); i++) {
        output.writeMessage(1, banks_.get(i));
      }
      getUnknownFields().writeTo(output);
    }

    private int memoizedSerializedSize = -1;
    public int getSerializedSize() {
      int size = memoizedSerializedSize;
      if (size != -1) return size;

      size = 0;
      for (int i = 0; i < banks_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, banks_.get(i));
      }
      size += getUnknownFields().getSerializedSize();
      memoizedSerializedSize = size;
      return size;
    }

    private static final long serialVersionUID = 0L;
    @java.lang.Override
    protected java.lang.Object writeReplace()
        throws java.io.ObjectStreamException {
      return super.writeReplace();
    }

    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }

    public static Builder newBuilder() { return Builder.create(); }
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer prototype) {
      return newBuilder().mergeFrom(prototype);
    }
    public Builder toBuilder() { return newBuilder(this); }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code SignedIntDataBuffer}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessage.Builder
       implements org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBufferOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_SignedIntDataBuffer_descriptor;
      }

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_SignedIntDataBuffer_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer.class, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer.Builder.class);
      }

      // Construct using org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
          getBanksFieldBuilder();
        }
      }
      private static Builder create() {
        return new Builder();
      }

      public Builder clear() {
        super.clear();
        if (banksBuilder_ == null) {
          banks_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
        } else {
          banksBuilder_.clear();
        }
        return this;
      }

      public Builder clone() {
        return create().mergeFrom(buildPartial());
      }

      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_SignedIntDataBuffer_descriptor;
      }

      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer getDefaultInstanceForType() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer.getDefaultInstance();
      }

      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer build() {
        org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer buildPartial() {
        org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer result = new org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer(this);
        int from_bitField0_ = bitField0_;
        if (banksBuilder_ == null) {
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            banks_ = java.util.Collections.unmodifiableList(banks_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.banks_ = banks_;
        } else {
          result.banks_ = banksBuilder_.build();
        }
        onBuilt();
        return result;
      }

      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer) {
          return mergeFrom((org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer other) {
        if (other == org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer.getDefaultInstance()) return this;
        if (banksBuilder_ == null) {
          if (!other.banks_.isEmpty()) {
            if (banks_.isEmpty()) {
              banks_ = other.banks_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureBanksIsMutable();
              banks_.addAll(other.banks_);
            }
            onChanged();
          }
        } else {
          if (!other.banks_.isEmpty()) {
            if (banksBuilder_.isEmpty()) {
              banksBuilder_.dispose();
              banksBuilder_ = null;
              banks_ = other.banks_;
              bitField0_ = (bitField0_ & ~0x00000001);
              banksBuilder_ = 
                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                   getBanksFieldBuilder() : null;
            } else {
              banksBuilder_.addAllMessages(other.banks_);
            }
          }
        }
        this.mergeUnknownFields(other.getUnknownFields());
        return this;
      }

      public final boolean isInitialized() {
        return true;
      }

      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer) e.getUnfinishedMessage();
          throw e;
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      // repeated .SignedIntArray banks = 1;
      private java.util.List banks_ =
        java.util.Collections.emptyList();
      private void ensureBanksIsMutable() {
        if (!((bitField0_ & 0x00000001) == 0x00000001)) {
          banks_ = new java.util.ArrayList(banks_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilder<
          org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray.Builder, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArrayOrBuilder> banksBuilder_;

      /**
       * repeated .SignedIntArray banks = 1;
       */
      public java.util.List getBanksList() {
        if (banksBuilder_ == null) {
          return java.util.Collections.unmodifiableList(banks_);
        } else {
          return banksBuilder_.getMessageList();
        }
      }
      /**
       * repeated .SignedIntArray banks = 1;
       */
      public int getBanksCount() {
        if (banksBuilder_ == null) {
          return banks_.size();
        } else {
          return banksBuilder_.getCount();
        }
      }
      /**
       * repeated .SignedIntArray banks = 1;
       */
      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray getBanks(int index) {
        if (banksBuilder_ == null) {
          return banks_.get(index);
        } else {
          return banksBuilder_.getMessage(index);
        }
      }
      /**
       * repeated .SignedIntArray banks = 1;
       */
      public Builder setBanks(
          int index, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray value) {
        if (banksBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureBanksIsMutable();
          banks_.set(index, value);
          onChanged();
        } else {
          banksBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .SignedIntArray banks = 1;
       */
      public Builder setBanks(
          int index, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray.Builder builderForValue) {
        if (banksBuilder_ == null) {
          ensureBanksIsMutable();
          banks_.set(index, builderForValue.build());
          onChanged();
        } else {
          banksBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .SignedIntArray banks = 1;
       */
      public Builder addBanks(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray value) {
        if (banksBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureBanksIsMutable();
          banks_.add(value);
          onChanged();
        } else {
          banksBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * repeated .SignedIntArray banks = 1;
       */
      public Builder addBanks(
          int index, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray value) {
        if (banksBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureBanksIsMutable();
          banks_.add(index, value);
          onChanged();
        } else {
          banksBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .SignedIntArray banks = 1;
       */
      public Builder addBanks(
          org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray.Builder builderForValue) {
        if (banksBuilder_ == null) {
          ensureBanksIsMutable();
          banks_.add(builderForValue.build());
          onChanged();
        } else {
          banksBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .SignedIntArray banks = 1;
       */
      public Builder addBanks(
          int index, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray.Builder builderForValue) {
        if (banksBuilder_ == null) {
          ensureBanksIsMutable();
          banks_.add(index, builderForValue.build());
          onChanged();
        } else {
          banksBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .SignedIntArray banks = 1;
       */
      public Builder addAllBanks(
          java.lang.Iterable values) {
        if (banksBuilder_ == null) {
          ensureBanksIsMutable();
          super.addAll(values, banks_);
          onChanged();
        } else {
          banksBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * repeated .SignedIntArray banks = 1;
       */
      public Builder clearBanks() {
        if (banksBuilder_ == null) {
          banks_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          banksBuilder_.clear();
        }
        return this;
      }
      /**
       * repeated .SignedIntArray banks = 1;
       */
      public Builder removeBanks(int index) {
        if (banksBuilder_ == null) {
          ensureBanksIsMutable();
          banks_.remove(index);
          onChanged();
        } else {
          banksBuilder_.remove(index);
        }
        return this;
      }
      /**
       * repeated .SignedIntArray banks = 1;
       */
      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray.Builder getBanksBuilder(
          int index) {
        return getBanksFieldBuilder().getBuilder(index);
      }
      /**
       * repeated .SignedIntArray banks = 1;
       */
      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArrayOrBuilder getBanksOrBuilder(
          int index) {
        if (banksBuilder_ == null) {
          return banks_.get(index);  } else {
          return banksBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * repeated .SignedIntArray banks = 1;
       */
      public java.util.List 
           getBanksOrBuilderList() {
        if (banksBuilder_ != null) {
          return banksBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(banks_);
        }
      }
      /**
       * repeated .SignedIntArray banks = 1;
       */
      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray.Builder addBanksBuilder() {
        return getBanksFieldBuilder().addBuilder(
            org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray.getDefaultInstance());
      }
      /**
       * repeated .SignedIntArray banks = 1;
       */
      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray.Builder addBanksBuilder(
          int index) {
        return getBanksFieldBuilder().addBuilder(
            index, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray.getDefaultInstance());
      }
      /**
       * repeated .SignedIntArray banks = 1;
       */
      public java.util.List 
           getBanksBuilderList() {
        return getBanksFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilder<
          org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray.Builder, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArrayOrBuilder> 
          getBanksFieldBuilder() {
        if (banksBuilder_ == null) {
          banksBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
              org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArray.Builder, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntArrayOrBuilder>(
                  banks_,
                  ((bitField0_ & 0x00000001) == 0x00000001),
                  getParentForChildren(),
                  isClean());
          banks_ = null;
        }
        return banksBuilder_;
      }

      // @@protoc_insertion_point(builder_scope:SignedIntDataBuffer)
    }

    static {
      defaultInstance = new SignedIntDataBuffer(true);
      defaultInstance.initFields();
    }

    // @@protoc_insertion_point(class_scope:SignedIntDataBuffer)
  }

  public interface DoubleDataBufferOrBuilder
      extends com.google.protobuf.MessageOrBuilder {

    // repeated .DoubleArray banks = 1;
    /**
     * repeated .DoubleArray banks = 1;
     */
    java.util.List 
        getBanksList();
    /**
     * repeated .DoubleArray banks = 1;
     */
    org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray getBanks(int index);
    /**
     * repeated .DoubleArray banks = 1;
     */
    int getBanksCount();
    /**
     * repeated .DoubleArray banks = 1;
     */
    java.util.List 
        getBanksOrBuilderList();
    /**
     * repeated .DoubleArray banks = 1;
     */
    org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArrayOrBuilder getBanksOrBuilder(
        int index);
  }
  /**
   * Protobuf type {@code DoubleDataBuffer}
   */
  public static final class DoubleDataBuffer extends
      com.google.protobuf.GeneratedMessage
      implements DoubleDataBufferOrBuilder {
    // Use DoubleDataBuffer.newBuilder() to construct.
    private DoubleDataBuffer(com.google.protobuf.GeneratedMessage.Builder builder) {
      super(builder);
      this.unknownFields = builder.getUnknownFields();
    }
    private DoubleDataBuffer(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

    private static final DoubleDataBuffer defaultInstance;
    public static DoubleDataBuffer getDefaultInstance() {
      return defaultInstance;
    }

    public DoubleDataBuffer getDefaultInstanceForType() {
      return defaultInstance;
    }

    private final com.google.protobuf.UnknownFieldSet unknownFields;
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
        getUnknownFields() {
      return this.unknownFields;
    }
    private DoubleDataBuffer(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      initFields();
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            default: {
              if (!parseUnknownField(input, unknownFields,
                                     extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
            case 10: {
              if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                banks_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000001;
              }
              banks_.add(input.readMessage(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray.PARSER, extensionRegistry));
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e.getMessage()).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
          banks_ = java.util.Collections.unmodifiableList(banks_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_DoubleDataBuffer_descriptor;
    }

    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_DoubleDataBuffer_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer.class, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer.Builder.class);
    }

    public static com.google.protobuf.Parser PARSER =
        new com.google.protobuf.AbstractParser() {
      public DoubleDataBuffer parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new DoubleDataBuffer(input, extensionRegistry);
      }
    };

    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }

    // repeated .DoubleArray banks = 1;
    public static final int BANKS_FIELD_NUMBER = 1;
    private java.util.List banks_;
    /**
     * repeated .DoubleArray banks = 1;
     */
    public java.util.List getBanksList() {
      return banks_;
    }
    /**
     * repeated .DoubleArray banks = 1;
     */
    public java.util.List 
        getBanksOrBuilderList() {
      return banks_;
    }
    /**
     * repeated .DoubleArray banks = 1;
     */
    public int getBanksCount() {
      return banks_.size();
    }
    /**
     * repeated .DoubleArray banks = 1;
     */
    public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray getBanks(int index) {
      return banks_.get(index);
    }
    /**
     * repeated .DoubleArray banks = 1;
     */
    public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArrayOrBuilder getBanksOrBuilder(
        int index) {
      return banks_.get(index);
    }

    private void initFields() {
      banks_ = java.util.Collections.emptyList();
    }
    private byte memoizedIsInitialized = -1;
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized != -1) return isInitialized == 1;

      memoizedIsInitialized = 1;
      return true;
    }

    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      getSerializedSize();
      for (int i = 0; i < banks_.size(); i++) {
        output.writeMessage(1, banks_.get(i));
      }
      getUnknownFields().writeTo(output);
    }

    private int memoizedSerializedSize = -1;
    public int getSerializedSize() {
      int size = memoizedSerializedSize;
      if (size != -1) return size;

      size = 0;
      for (int i = 0; i < banks_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, banks_.get(i));
      }
      size += getUnknownFields().getSerializedSize();
      memoizedSerializedSize = size;
      return size;
    }

    private static final long serialVersionUID = 0L;
    @java.lang.Override
    protected java.lang.Object writeReplace()
        throws java.io.ObjectStreamException {
      return super.writeReplace();
    }

    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }

    public static Builder newBuilder() { return Builder.create(); }
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer prototype) {
      return newBuilder().mergeFrom(prototype);
    }
    public Builder toBuilder() { return newBuilder(this); }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code DoubleDataBuffer}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessage.Builder
       implements org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBufferOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_DoubleDataBuffer_descriptor;
      }

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_DoubleDataBuffer_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer.class, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer.Builder.class);
      }

      // Construct using org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
          getBanksFieldBuilder();
        }
      }
      private static Builder create() {
        return new Builder();
      }

      public Builder clear() {
        super.clear();
        if (banksBuilder_ == null) {
          banks_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
        } else {
          banksBuilder_.clear();
        }
        return this;
      }

      public Builder clone() {
        return create().mergeFrom(buildPartial());
      }

      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_DoubleDataBuffer_descriptor;
      }

      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer getDefaultInstanceForType() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer.getDefaultInstance();
      }

      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer build() {
        org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer buildPartial() {
        org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer result = new org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer(this);
        int from_bitField0_ = bitField0_;
        if (banksBuilder_ == null) {
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            banks_ = java.util.Collections.unmodifiableList(banks_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.banks_ = banks_;
        } else {
          result.banks_ = banksBuilder_.build();
        }
        onBuilt();
        return result;
      }

      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer) {
          return mergeFrom((org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer other) {
        if (other == org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer.getDefaultInstance()) return this;
        if (banksBuilder_ == null) {
          if (!other.banks_.isEmpty()) {
            if (banks_.isEmpty()) {
              banks_ = other.banks_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureBanksIsMutable();
              banks_.addAll(other.banks_);
            }
            onChanged();
          }
        } else {
          if (!other.banks_.isEmpty()) {
            if (banksBuilder_.isEmpty()) {
              banksBuilder_.dispose();
              banksBuilder_ = null;
              banks_ = other.banks_;
              bitField0_ = (bitField0_ & ~0x00000001);
              banksBuilder_ = 
                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                   getBanksFieldBuilder() : null;
            } else {
              banksBuilder_.addAllMessages(other.banks_);
            }
          }
        }
        this.mergeUnknownFields(other.getUnknownFields());
        return this;
      }

      public final boolean isInitialized() {
        return true;
      }

      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer) e.getUnfinishedMessage();
          throw e;
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      // repeated .DoubleArray banks = 1;
      private java.util.List banks_ =
        java.util.Collections.emptyList();
      private void ensureBanksIsMutable() {
        if (!((bitField0_ & 0x00000001) == 0x00000001)) {
          banks_ = new java.util.ArrayList(banks_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilder<
          org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray.Builder, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArrayOrBuilder> banksBuilder_;

      /**
       * repeated .DoubleArray banks = 1;
       */
      public java.util.List getBanksList() {
        if (banksBuilder_ == null) {
          return java.util.Collections.unmodifiableList(banks_);
        } else {
          return banksBuilder_.getMessageList();
        }
      }
      /**
       * repeated .DoubleArray banks = 1;
       */
      public int getBanksCount() {
        if (banksBuilder_ == null) {
          return banks_.size();
        } else {
          return banksBuilder_.getCount();
        }
      }
      /**
       * repeated .DoubleArray banks = 1;
       */
      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray getBanks(int index) {
        if (banksBuilder_ == null) {
          return banks_.get(index);
        } else {
          return banksBuilder_.getMessage(index);
        }
      }
      /**
       * repeated .DoubleArray banks = 1;
       */
      public Builder setBanks(
          int index, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray value) {
        if (banksBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureBanksIsMutable();
          banks_.set(index, value);
          onChanged();
        } else {
          banksBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .DoubleArray banks = 1;
       */
      public Builder setBanks(
          int index, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray.Builder builderForValue) {
        if (banksBuilder_ == null) {
          ensureBanksIsMutable();
          banks_.set(index, builderForValue.build());
          onChanged();
        } else {
          banksBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .DoubleArray banks = 1;
       */
      public Builder addBanks(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray value) {
        if (banksBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureBanksIsMutable();
          banks_.add(value);
          onChanged();
        } else {
          banksBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * repeated .DoubleArray banks = 1;
       */
      public Builder addBanks(
          int index, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray value) {
        if (banksBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureBanksIsMutable();
          banks_.add(index, value);
          onChanged();
        } else {
          banksBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .DoubleArray banks = 1;
       */
      public Builder addBanks(
          org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray.Builder builderForValue) {
        if (banksBuilder_ == null) {
          ensureBanksIsMutable();
          banks_.add(builderForValue.build());
          onChanged();
        } else {
          banksBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .DoubleArray banks = 1;
       */
      public Builder addBanks(
          int index, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray.Builder builderForValue) {
        if (banksBuilder_ == null) {
          ensureBanksIsMutable();
          banks_.add(index, builderForValue.build());
          onChanged();
        } else {
          banksBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .DoubleArray banks = 1;
       */
      public Builder addAllBanks(
          java.lang.Iterable values) {
        if (banksBuilder_ == null) {
          ensureBanksIsMutable();
          super.addAll(values, banks_);
          onChanged();
        } else {
          banksBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * repeated .DoubleArray banks = 1;
       */
      public Builder clearBanks() {
        if (banksBuilder_ == null) {
          banks_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          banksBuilder_.clear();
        }
        return this;
      }
      /**
       * repeated .DoubleArray banks = 1;
       */
      public Builder removeBanks(int index) {
        if (banksBuilder_ == null) {
          ensureBanksIsMutable();
          banks_.remove(index);
          onChanged();
        } else {
          banksBuilder_.remove(index);
        }
        return this;
      }
      /**
       * repeated .DoubleArray banks = 1;
       */
      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray.Builder getBanksBuilder(
          int index) {
        return getBanksFieldBuilder().getBuilder(index);
      }
      /**
       * repeated .DoubleArray banks = 1;
       */
      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArrayOrBuilder getBanksOrBuilder(
          int index) {
        if (banksBuilder_ == null) {
          return banks_.get(index);  } else {
          return banksBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * repeated .DoubleArray banks = 1;
       */
      public java.util.List 
           getBanksOrBuilderList() {
        if (banksBuilder_ != null) {
          return banksBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(banks_);
        }
      }
      /**
       * repeated .DoubleArray banks = 1;
       */
      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray.Builder addBanksBuilder() {
        return getBanksFieldBuilder().addBuilder(
            org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray.getDefaultInstance());
      }
      /**
       * repeated .DoubleArray banks = 1;
       */
      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray.Builder addBanksBuilder(
          int index) {
        return getBanksFieldBuilder().addBuilder(
            index, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray.getDefaultInstance());
      }
      /**
       * repeated .DoubleArray banks = 1;
       */
      public java.util.List 
           getBanksBuilderList() {
        return getBanksFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilder<
          org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray.Builder, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArrayOrBuilder> 
          getBanksFieldBuilder() {
        if (banksBuilder_ == null) {
          banksBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
              org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArray.Builder, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleArrayOrBuilder>(
                  banks_,
                  ((bitField0_ & 0x00000001) == 0x00000001),
                  getParentForChildren(),
                  isClean());
          banks_ = null;
        }
        return banksBuilder_;
      }

      // @@protoc_insertion_point(builder_scope:DoubleDataBuffer)
    }

    static {
      defaultInstance = new DoubleDataBuffer(true);
      defaultInstance.initFields();
    }

    // @@protoc_insertion_point(class_scope:DoubleDataBuffer)
  }

  public interface FloatDataBufferOrBuilder
      extends com.google.protobuf.MessageOrBuilder {

    // repeated .FloatArray banks = 1;
    /**
     * repeated .FloatArray banks = 1;
     */
    java.util.List 
        getBanksList();
    /**
     * repeated .FloatArray banks = 1;
     */
    org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray getBanks(int index);
    /**
     * repeated .FloatArray banks = 1;
     */
    int getBanksCount();
    /**
     * repeated .FloatArray banks = 1;
     */
    java.util.List 
        getBanksOrBuilderList();
    /**
     * repeated .FloatArray banks = 1;
     */
    org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArrayOrBuilder getBanksOrBuilder(
        int index);
  }
  /**
   * Protobuf type {@code FloatDataBuffer}
   */
  public static final class FloatDataBuffer extends
      com.google.protobuf.GeneratedMessage
      implements FloatDataBufferOrBuilder {
    // Use FloatDataBuffer.newBuilder() to construct.
    private FloatDataBuffer(com.google.protobuf.GeneratedMessage.Builder builder) {
      super(builder);
      this.unknownFields = builder.getUnknownFields();
    }
    private FloatDataBuffer(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

    private static final FloatDataBuffer defaultInstance;
    public static FloatDataBuffer getDefaultInstance() {
      return defaultInstance;
    }

    public FloatDataBuffer getDefaultInstanceForType() {
      return defaultInstance;
    }

    private final com.google.protobuf.UnknownFieldSet unknownFields;
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
        getUnknownFields() {
      return this.unknownFields;
    }
    private FloatDataBuffer(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      initFields();
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            default: {
              if (!parseUnknownField(input, unknownFields,
                                     extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
            case 10: {
              if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                banks_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000001;
              }
              banks_.add(input.readMessage(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray.PARSER, extensionRegistry));
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e.getMessage()).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
          banks_ = java.util.Collections.unmodifiableList(banks_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_FloatDataBuffer_descriptor;
    }

    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_FloatDataBuffer_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer.class, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer.Builder.class);
    }

    public static com.google.protobuf.Parser PARSER =
        new com.google.protobuf.AbstractParser() {
      public FloatDataBuffer parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new FloatDataBuffer(input, extensionRegistry);
      }
    };

    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }

    // repeated .FloatArray banks = 1;
    public static final int BANKS_FIELD_NUMBER = 1;
    private java.util.List banks_;
    /**
     * repeated .FloatArray banks = 1;
     */
    public java.util.List getBanksList() {
      return banks_;
    }
    /**
     * repeated .FloatArray banks = 1;
     */
    public java.util.List 
        getBanksOrBuilderList() {
      return banks_;
    }
    /**
     * repeated .FloatArray banks = 1;
     */
    public int getBanksCount() {
      return banks_.size();
    }
    /**
     * repeated .FloatArray banks = 1;
     */
    public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray getBanks(int index) {
      return banks_.get(index);
    }
    /**
     * repeated .FloatArray banks = 1;
     */
    public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArrayOrBuilder getBanksOrBuilder(
        int index) {
      return banks_.get(index);
    }

    private void initFields() {
      banks_ = java.util.Collections.emptyList();
    }
    private byte memoizedIsInitialized = -1;
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized != -1) return isInitialized == 1;

      memoizedIsInitialized = 1;
      return true;
    }

    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      getSerializedSize();
      for (int i = 0; i < banks_.size(); i++) {
        output.writeMessage(1, banks_.get(i));
      }
      getUnknownFields().writeTo(output);
    }

    private int memoizedSerializedSize = -1;
    public int getSerializedSize() {
      int size = memoizedSerializedSize;
      if (size != -1) return size;

      size = 0;
      for (int i = 0; i < banks_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(1, banks_.get(i));
      }
      size += getUnknownFields().getSerializedSize();
      memoizedSerializedSize = size;
      return size;
    }

    private static final long serialVersionUID = 0L;
    @java.lang.Override
    protected java.lang.Object writeReplace()
        throws java.io.ObjectStreamException {
      return super.writeReplace();
    }

    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }

    public static Builder newBuilder() { return Builder.create(); }
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer prototype) {
      return newBuilder().mergeFrom(prototype);
    }
    public Builder toBuilder() { return newBuilder(this); }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code FloatDataBuffer}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessage.Builder
       implements org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBufferOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_FloatDataBuffer_descriptor;
      }

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_FloatDataBuffer_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer.class, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer.Builder.class);
      }

      // Construct using org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
          getBanksFieldBuilder();
        }
      }
      private static Builder create() {
        return new Builder();
      }

      public Builder clear() {
        super.clear();
        if (banksBuilder_ == null) {
          banks_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
        } else {
          banksBuilder_.clear();
        }
        return this;
      }

      public Builder clone() {
        return create().mergeFrom(buildPartial());
      }

      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_FloatDataBuffer_descriptor;
      }

      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer getDefaultInstanceForType() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer.getDefaultInstance();
      }

      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer build() {
        org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer buildPartial() {
        org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer result = new org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer(this);
        int from_bitField0_ = bitField0_;
        if (banksBuilder_ == null) {
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            banks_ = java.util.Collections.unmodifiableList(banks_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.banks_ = banks_;
        } else {
          result.banks_ = banksBuilder_.build();
        }
        onBuilt();
        return result;
      }

      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer) {
          return mergeFrom((org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer other) {
        if (other == org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer.getDefaultInstance()) return this;
        if (banksBuilder_ == null) {
          if (!other.banks_.isEmpty()) {
            if (banks_.isEmpty()) {
              banks_ = other.banks_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureBanksIsMutable();
              banks_.addAll(other.banks_);
            }
            onChanged();
          }
        } else {
          if (!other.banks_.isEmpty()) {
            if (banksBuilder_.isEmpty()) {
              banksBuilder_.dispose();
              banksBuilder_ = null;
              banks_ = other.banks_;
              bitField0_ = (bitField0_ & ~0x00000001);
              banksBuilder_ = 
                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                   getBanksFieldBuilder() : null;
            } else {
              banksBuilder_.addAllMessages(other.banks_);
            }
          }
        }
        this.mergeUnknownFields(other.getUnknownFields());
        return this;
      }

      public final boolean isInitialized() {
        return true;
      }

      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer) e.getUnfinishedMessage();
          throw e;
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      // repeated .FloatArray banks = 1;
      private java.util.List banks_ =
        java.util.Collections.emptyList();
      private void ensureBanksIsMutable() {
        if (!((bitField0_ & 0x00000001) == 0x00000001)) {
          banks_ = new java.util.ArrayList(banks_);
          bitField0_ |= 0x00000001;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilder<
          org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray.Builder, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArrayOrBuilder> banksBuilder_;

      /**
       * repeated .FloatArray banks = 1;
       */
      public java.util.List getBanksList() {
        if (banksBuilder_ == null) {
          return java.util.Collections.unmodifiableList(banks_);
        } else {
          return banksBuilder_.getMessageList();
        }
      }
      /**
       * repeated .FloatArray banks = 1;
       */
      public int getBanksCount() {
        if (banksBuilder_ == null) {
          return banks_.size();
        } else {
          return banksBuilder_.getCount();
        }
      }
      /**
       * repeated .FloatArray banks = 1;
       */
      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray getBanks(int index) {
        if (banksBuilder_ == null) {
          return banks_.get(index);
        } else {
          return banksBuilder_.getMessage(index);
        }
      }
      /**
       * repeated .FloatArray banks = 1;
       */
      public Builder setBanks(
          int index, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray value) {
        if (banksBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureBanksIsMutable();
          banks_.set(index, value);
          onChanged();
        } else {
          banksBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .FloatArray banks = 1;
       */
      public Builder setBanks(
          int index, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray.Builder builderForValue) {
        if (banksBuilder_ == null) {
          ensureBanksIsMutable();
          banks_.set(index, builderForValue.build());
          onChanged();
        } else {
          banksBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .FloatArray banks = 1;
       */
      public Builder addBanks(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray value) {
        if (banksBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureBanksIsMutable();
          banks_.add(value);
          onChanged();
        } else {
          banksBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * repeated .FloatArray banks = 1;
       */
      public Builder addBanks(
          int index, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray value) {
        if (banksBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureBanksIsMutable();
          banks_.add(index, value);
          onChanged();
        } else {
          banksBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * repeated .FloatArray banks = 1;
       */
      public Builder addBanks(
          org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray.Builder builderForValue) {
        if (banksBuilder_ == null) {
          ensureBanksIsMutable();
          banks_.add(builderForValue.build());
          onChanged();
        } else {
          banksBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .FloatArray banks = 1;
       */
      public Builder addBanks(
          int index, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray.Builder builderForValue) {
        if (banksBuilder_ == null) {
          ensureBanksIsMutable();
          banks_.add(index, builderForValue.build());
          onChanged();
        } else {
          banksBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * repeated .FloatArray banks = 1;
       */
      public Builder addAllBanks(
          java.lang.Iterable values) {
        if (banksBuilder_ == null) {
          ensureBanksIsMutable();
          super.addAll(values, banks_);
          onChanged();
        } else {
          banksBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * repeated .FloatArray banks = 1;
       */
      public Builder clearBanks() {
        if (banksBuilder_ == null) {
          banks_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
        } else {
          banksBuilder_.clear();
        }
        return this;
      }
      /**
       * repeated .FloatArray banks = 1;
       */
      public Builder removeBanks(int index) {
        if (banksBuilder_ == null) {
          ensureBanksIsMutable();
          banks_.remove(index);
          onChanged();
        } else {
          banksBuilder_.remove(index);
        }
        return this;
      }
      /**
       * repeated .FloatArray banks = 1;
       */
      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray.Builder getBanksBuilder(
          int index) {
        return getBanksFieldBuilder().getBuilder(index);
      }
      /**
       * repeated .FloatArray banks = 1;
       */
      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArrayOrBuilder getBanksOrBuilder(
          int index) {
        if (banksBuilder_ == null) {
          return banks_.get(index);  } else {
          return banksBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * repeated .FloatArray banks = 1;
       */
      public java.util.List 
           getBanksOrBuilderList() {
        if (banksBuilder_ != null) {
          return banksBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(banks_);
        }
      }
      /**
       * repeated .FloatArray banks = 1;
       */
      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray.Builder addBanksBuilder() {
        return getBanksFieldBuilder().addBuilder(
            org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray.getDefaultInstance());
      }
      /**
       * repeated .FloatArray banks = 1;
       */
      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray.Builder addBanksBuilder(
          int index) {
        return getBanksFieldBuilder().addBuilder(
            index, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray.getDefaultInstance());
      }
      /**
       * repeated .FloatArray banks = 1;
       */
      public java.util.List 
           getBanksBuilderList() {
        return getBanksFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilder<
          org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray.Builder, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArrayOrBuilder> 
          getBanksFieldBuilder() {
        if (banksBuilder_ == null) {
          banksBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
              org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArray.Builder, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatArrayOrBuilder>(
                  banks_,
                  ((bitField0_ & 0x00000001) == 0x00000001),
                  getParentForChildren(),
                  isClean());
          banks_ = null;
        }
        return banksBuilder_;
      }

      // @@protoc_insertion_point(builder_scope:FloatDataBuffer)
    }

    static {
      defaultInstance = new FloatDataBuffer(true);
      defaultInstance.initFields();
    }

    // @@protoc_insertion_point(class_scope:FloatDataBuffer)
  }

  public interface ByteDataBufferOrBuilder
      extends com.google.protobuf.MessageOrBuilder {

    // repeated bytes banks = 1;
    /**
     * repeated bytes banks = 1;
     */
    java.util.List getBanksList();
    /**
     * repeated bytes banks = 1;
     */
    int getBanksCount();
    /**
     * repeated bytes banks = 1;
     */
    com.google.protobuf.ByteString getBanks(int index);
  }
  /**
   * Protobuf type {@code ByteDataBuffer}
   */
  public static final class ByteDataBuffer extends
      com.google.protobuf.GeneratedMessage
      implements ByteDataBufferOrBuilder {
    // Use ByteDataBuffer.newBuilder() to construct.
    private ByteDataBuffer(com.google.protobuf.GeneratedMessage.Builder builder) {
      super(builder);
      this.unknownFields = builder.getUnknownFields();
    }
    private ByteDataBuffer(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

    private static final ByteDataBuffer defaultInstance;
    public static ByteDataBuffer getDefaultInstance() {
      return defaultInstance;
    }

    public ByteDataBuffer getDefaultInstanceForType() {
      return defaultInstance;
    }

    private final com.google.protobuf.UnknownFieldSet unknownFields;
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
        getUnknownFields() {
      return this.unknownFields;
    }
    private ByteDataBuffer(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      initFields();
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            default: {
              if (!parseUnknownField(input, unknownFields,
                                     extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
            case 10: {
              if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                banks_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000001;
              }
              banks_.add(input.readBytes());
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e.getMessage()).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
          banks_ = java.util.Collections.unmodifiableList(banks_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_ByteDataBuffer_descriptor;
    }

    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_ByteDataBuffer_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer.class, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer.Builder.class);
    }

    public static com.google.protobuf.Parser PARSER =
        new com.google.protobuf.AbstractParser() {
      public ByteDataBuffer parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new ByteDataBuffer(input, extensionRegistry);
      }
    };

    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }

    // repeated bytes banks = 1;
    public static final int BANKS_FIELD_NUMBER = 1;
    private java.util.List banks_;
    /**
     * repeated bytes banks = 1;
     */
    public java.util.List
        getBanksList() {
      return banks_;
    }
    /**
     * repeated bytes banks = 1;
     */
    public int getBanksCount() {
      return banks_.size();
    }
    /**
     * repeated bytes banks = 1;
     */
    public com.google.protobuf.ByteString getBanks(int index) {
      return banks_.get(index);
    }

    private void initFields() {
      banks_ = java.util.Collections.emptyList();
    }
    private byte memoizedIsInitialized = -1;
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized != -1) return isInitialized == 1;

      memoizedIsInitialized = 1;
      return true;
    }

    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      getSerializedSize();
      for (int i = 0; i < banks_.size(); i++) {
        output.writeBytes(1, banks_.get(i));
      }
      getUnknownFields().writeTo(output);
    }

    private int memoizedSerializedSize = -1;
    public int getSerializedSize() {
      int size = memoizedSerializedSize;
      if (size != -1) return size;

      size = 0;
      {
        int dataSize = 0;
        for (int i = 0; i < banks_.size(); i++) {
          dataSize += com.google.protobuf.CodedOutputStream
            .computeBytesSizeNoTag(banks_.get(i));
        }
        size += dataSize;
        size += 1 * getBanksList().size();
      }
      size += getUnknownFields().getSerializedSize();
      memoizedSerializedSize = size;
      return size;
    }

    private static final long serialVersionUID = 0L;
    @java.lang.Override
    protected java.lang.Object writeReplace()
        throws java.io.ObjectStreamException {
      return super.writeReplace();
    }

    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }

    public static Builder newBuilder() { return Builder.create(); }
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer prototype) {
      return newBuilder().mergeFrom(prototype);
    }
    public Builder toBuilder() { return newBuilder(this); }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code ByteDataBuffer}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessage.Builder
       implements org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBufferOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_ByteDataBuffer_descriptor;
      }

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_ByteDataBuffer_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer.class, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer.Builder.class);
      }

      // Construct using org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
        }
      }
      private static Builder create() {
        return new Builder();
      }

      public Builder clear() {
        super.clear();
        banks_ = java.util.Collections.emptyList();
        bitField0_ = (bitField0_ & ~0x00000001);
        return this;
      }

      public Builder clone() {
        return create().mergeFrom(buildPartial());
      }

      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_ByteDataBuffer_descriptor;
      }

      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer getDefaultInstanceForType() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer.getDefaultInstance();
      }

      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer build() {
        org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer buildPartial() {
        org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer result = new org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer(this);
        int from_bitField0_ = bitField0_;
        if (((bitField0_ & 0x00000001) == 0x00000001)) {
          banks_ = java.util.Collections.unmodifiableList(banks_);
          bitField0_ = (bitField0_ & ~0x00000001);
        }
        result.banks_ = banks_;
        onBuilt();
        return result;
      }

      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer) {
          return mergeFrom((org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer other) {
        if (other == org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer.getDefaultInstance()) return this;
        if (!other.banks_.isEmpty()) {
          if (banks_.isEmpty()) {
            banks_ = other.banks_;
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            ensureBanksIsMutable();
            banks_.addAll(other.banks_);
          }
          onChanged();
        }
        this.mergeUnknownFields(other.getUnknownFields());
        return this;
      }

      public final boolean isInitialized() {
        return true;
      }

      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer) e.getUnfinishedMessage();
          throw e;
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      // repeated bytes banks = 1;
      private java.util.List banks_ = java.util.Collections.emptyList();
      private void ensureBanksIsMutable() {
        if (!((bitField0_ & 0x00000001) == 0x00000001)) {
          banks_ = new java.util.ArrayList(banks_);
          bitField0_ |= 0x00000001;
         }
      }
      /**
       * repeated bytes banks = 1;
       */
      public java.util.List
          getBanksList() {
        return java.util.Collections.unmodifiableList(banks_);
      }
      /**
       * repeated bytes banks = 1;
       */
      public int getBanksCount() {
        return banks_.size();
      }
      /**
       * repeated bytes banks = 1;
       */
      public com.google.protobuf.ByteString getBanks(int index) {
        return banks_.get(index);
      }
      /**
       * repeated bytes banks = 1;
       */
      public Builder setBanks(
          int index, com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureBanksIsMutable();
        banks_.set(index, value);
        onChanged();
        return this;
      }
      /**
       * repeated bytes banks = 1;
       */
      public Builder addBanks(com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  ensureBanksIsMutable();
        banks_.add(value);
        onChanged();
        return this;
      }
      /**
       * repeated bytes banks = 1;
       */
      public Builder addAllBanks(
          java.lang.Iterable values) {
        ensureBanksIsMutable();
        super.addAll(values, banks_);
        onChanged();
        return this;
      }
      /**
       * repeated bytes banks = 1;
       */
      public Builder clearBanks() {
        banks_ = java.util.Collections.emptyList();
        bitField0_ = (bitField0_ & ~0x00000001);
        onChanged();
        return this;
      }

      // @@protoc_insertion_point(builder_scope:ByteDataBuffer)
    }

    static {
      defaultInstance = new ByteDataBuffer(true);
      defaultInstance.initFields();
    }

    // @@protoc_insertion_point(class_scope:ByteDataBuffer)
  }

  public interface DataBufferOrBuilder
      extends com.google.protobuf.MessageOrBuilder {

    // required uint32 type = 1;
    /**
     * required uint32 type = 1;
     */
    boolean hasType();
    /**
     * required uint32 type = 1;
     */
    int getType();

    // repeated uint32 offsets = 2 [packed = true];
    /**
     * repeated uint32 offsets = 2 [packed = true];
     */
    java.util.List getOffsetsList();
    /**
     * repeated uint32 offsets = 2 [packed = true];
     */
    int getOffsetsCount();
    /**
     * repeated uint32 offsets = 2 [packed = true];
     */
    int getOffsets(int index);

    // required uint32 size = 3;
    /**
     * required uint32 size = 3;
     */
    boolean hasSize();
    /**
     * required uint32 size = 3;
     */
    int getSize();

    // optional .SignedIntDataBuffer sint = 4;
    /**
     * optional .SignedIntDataBuffer sint = 4;
     */
    boolean hasSint();
    /**
     * optional .SignedIntDataBuffer sint = 4;
     */
    org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer getSint();
    /**
     * optional .SignedIntDataBuffer sint = 4;
     */
    org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBufferOrBuilder getSintOrBuilder();

    // optional .DoubleDataBuffer dbl = 5;
    /**
     * optional .DoubleDataBuffer dbl = 5;
     */
    boolean hasDbl();
    /**
     * optional .DoubleDataBuffer dbl = 5;
     */
    org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer getDbl();
    /**
     * optional .DoubleDataBuffer dbl = 5;
     */
    org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBufferOrBuilder getDblOrBuilder();

    // optional .FloatDataBuffer flt = 6;
    /**
     * optional .FloatDataBuffer flt = 6;
     */
    boolean hasFlt();
    /**
     * optional .FloatDataBuffer flt = 6;
     */
    org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer getFlt();
    /**
     * optional .FloatDataBuffer flt = 6;
     */
    org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBufferOrBuilder getFltOrBuilder();

    // optional .ByteDataBuffer byteDb = 7;
    /**
     * optional .ByteDataBuffer byteDb = 7;
     */
    boolean hasByteDb();
    /**
     * optional .ByteDataBuffer byteDb = 7;
     */
    org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer getByteDb();
    /**
     * optional .ByteDataBuffer byteDb = 7;
     */
    org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBufferOrBuilder getByteDbOrBuilder();
  }
  /**
   * Protobuf type {@code DataBuffer}
   */
  public static final class DataBuffer extends
      com.google.protobuf.GeneratedMessage
      implements DataBufferOrBuilder {
    // Use DataBuffer.newBuilder() to construct.
    private DataBuffer(com.google.protobuf.GeneratedMessage.Builder builder) {
      super(builder);
      this.unknownFields = builder.getUnknownFields();
    }
    private DataBuffer(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }

    private static final DataBuffer defaultInstance;
    public static DataBuffer getDefaultInstance() {
      return defaultInstance;
    }

    public DataBuffer getDefaultInstanceForType() {
      return defaultInstance;
    }

    private final com.google.protobuf.UnknownFieldSet unknownFields;
    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
        getUnknownFields() {
      return this.unknownFields;
    }
    private DataBuffer(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      initFields();
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            default: {
              if (!parseUnknownField(input, unknownFields,
                                     extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
            case 8: {
              bitField0_ |= 0x00000001;
              type_ = input.readUInt32();
              break;
            }
            case 16: {
              if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
                offsets_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000002;
              }
              offsets_.add(input.readUInt32());
              break;
            }
            case 18: {
              int length = input.readRawVarint32();
              int limit = input.pushLimit(length);
              if (!((mutable_bitField0_ & 0x00000002) == 0x00000002) && input.getBytesUntilLimit() > 0) {
                offsets_ = new java.util.ArrayList();
                mutable_bitField0_ |= 0x00000002;
              }
              while (input.getBytesUntilLimit() > 0) {
                offsets_.add(input.readUInt32());
              }
              input.popLimit(limit);
              break;
            }
            case 24: {
              bitField0_ |= 0x00000002;
              size_ = input.readUInt32();
              break;
            }
            case 34: {
              org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer.Builder subBuilder = null;
              if (((bitField0_ & 0x00000004) == 0x00000004)) {
                subBuilder = sint_.toBuilder();
              }
              sint_ = input.readMessage(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer.PARSER, extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(sint_);
                sint_ = subBuilder.buildPartial();
              }
              bitField0_ |= 0x00000004;
              break;
            }
            case 42: {
              org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer.Builder subBuilder = null;
              if (((bitField0_ & 0x00000008) == 0x00000008)) {
                subBuilder = dbl_.toBuilder();
              }
              dbl_ = input.readMessage(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer.PARSER, extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(dbl_);
                dbl_ = subBuilder.buildPartial();
              }
              bitField0_ |= 0x00000008;
              break;
            }
            case 50: {
              org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer.Builder subBuilder = null;
              if (((bitField0_ & 0x00000010) == 0x00000010)) {
                subBuilder = flt_.toBuilder();
              }
              flt_ = input.readMessage(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer.PARSER, extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(flt_);
                flt_ = subBuilder.buildPartial();
              }
              bitField0_ |= 0x00000010;
              break;
            }
            case 58: {
              org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer.Builder subBuilder = null;
              if (((bitField0_ & 0x00000020) == 0x00000020)) {
                subBuilder = byteDb_.toBuilder();
              }
              byteDb_ = input.readMessage(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer.PARSER, extensionRegistry);
              if (subBuilder != null) {
                subBuilder.mergeFrom(byteDb_);
                byteDb_ = subBuilder.buildPartial();
              }
              bitField0_ |= 0x00000020;
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e.getMessage()).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
          offsets_ = java.util.Collections.unmodifiableList(offsets_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_DataBuffer_descriptor;
    }

    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_DataBuffer_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBuffer.class, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBuffer.Builder.class);
    }

    public static com.google.protobuf.Parser PARSER =
        new com.google.protobuf.AbstractParser() {
      public DataBuffer parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new DataBuffer(input, extensionRegistry);
      }
    };

    @java.lang.Override
    public com.google.protobuf.Parser getParserForType() {
      return PARSER;
    }

    private int bitField0_;
    // required uint32 type = 1;
    public static final int TYPE_FIELD_NUMBER = 1;
    private int type_;
    /**
     * required uint32 type = 1;
     */
    public boolean hasType() {
      return ((bitField0_ & 0x00000001) == 0x00000001);
    }
    /**
     * required uint32 type = 1;
     */
    public int getType() {
      return type_;
    }

    // repeated uint32 offsets = 2 [packed = true];
    public static final int OFFSETS_FIELD_NUMBER = 2;
    private java.util.List offsets_;
    /**
     * repeated uint32 offsets = 2 [packed = true];
     */
    public java.util.List
        getOffsetsList() {
      return offsets_;
    }
    /**
     * repeated uint32 offsets = 2 [packed = true];
     */
    public int getOffsetsCount() {
      return offsets_.size();
    }
    /**
     * repeated uint32 offsets = 2 [packed = true];
     */
    public int getOffsets(int index) {
      return offsets_.get(index);
    }
    private int offsetsMemoizedSerializedSize = -1;

    // required uint32 size = 3;
    public static final int SIZE_FIELD_NUMBER = 3;
    private int size_;
    /**
     * required uint32 size = 3;
     */
    public boolean hasSize() {
      return ((bitField0_ & 0x00000002) == 0x00000002);
    }
    /**
     * required uint32 size = 3;
     */
    public int getSize() {
      return size_;
    }

    // optional .SignedIntDataBuffer sint = 4;
    public static final int SINT_FIELD_NUMBER = 4;
    private org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer sint_;
    /**
     * optional .SignedIntDataBuffer sint = 4;
     */
    public boolean hasSint() {
      return ((bitField0_ & 0x00000004) == 0x00000004);
    }
    /**
     * optional .SignedIntDataBuffer sint = 4;
     */
    public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer getSint() {
      return sint_;
    }
    /**
     * optional .SignedIntDataBuffer sint = 4;
     */
    public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBufferOrBuilder getSintOrBuilder() {
      return sint_;
    }

    // optional .DoubleDataBuffer dbl = 5;
    public static final int DBL_FIELD_NUMBER = 5;
    private org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer dbl_;
    /**
     * optional .DoubleDataBuffer dbl = 5;
     */
    public boolean hasDbl() {
      return ((bitField0_ & 0x00000008) == 0x00000008);
    }
    /**
     * optional .DoubleDataBuffer dbl = 5;
     */
    public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer getDbl() {
      return dbl_;
    }
    /**
     * optional .DoubleDataBuffer dbl = 5;
     */
    public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBufferOrBuilder getDblOrBuilder() {
      return dbl_;
    }

    // optional .FloatDataBuffer flt = 6;
    public static final int FLT_FIELD_NUMBER = 6;
    private org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer flt_;
    /**
     * optional .FloatDataBuffer flt = 6;
     */
    public boolean hasFlt() {
      return ((bitField0_ & 0x00000010) == 0x00000010);
    }
    /**
     * optional .FloatDataBuffer flt = 6;
     */
    public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer getFlt() {
      return flt_;
    }
    /**
     * optional .FloatDataBuffer flt = 6;
     */
    public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBufferOrBuilder getFltOrBuilder() {
      return flt_;
    }

    // optional .ByteDataBuffer byteDb = 7;
    public static final int BYTEDB_FIELD_NUMBER = 7;
    private org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer byteDb_;
    /**
     * optional .ByteDataBuffer byteDb = 7;
     */
    public boolean hasByteDb() {
      return ((bitField0_ & 0x00000020) == 0x00000020);
    }
    /**
     * optional .ByteDataBuffer byteDb = 7;
     */
    public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer getByteDb() {
      return byteDb_;
    }
    /**
     * optional .ByteDataBuffer byteDb = 7;
     */
    public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBufferOrBuilder getByteDbOrBuilder() {
      return byteDb_;
    }

    private void initFields() {
      type_ = 0;
      offsets_ = java.util.Collections.emptyList();
      size_ = 0;
      sint_ = org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer.getDefaultInstance();
      dbl_ = org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer.getDefaultInstance();
      flt_ = org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer.getDefaultInstance();
      byteDb_ = org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer.getDefaultInstance();
    }
    private byte memoizedIsInitialized = -1;
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized != -1) return isInitialized == 1;

      if (!hasType()) {
        memoizedIsInitialized = 0;
        return false;
      }
      if (!hasSize()) {
        memoizedIsInitialized = 0;
        return false;
      }
      memoizedIsInitialized = 1;
      return true;
    }

    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      getSerializedSize();
      if (((bitField0_ & 0x00000001) == 0x00000001)) {
        output.writeUInt32(1, type_);
      }
      if (getOffsetsList().size() > 0) {
        output.writeRawVarint32(18);
        output.writeRawVarint32(offsetsMemoizedSerializedSize);
      }
      for (int i = 0; i < offsets_.size(); i++) {
        output.writeUInt32NoTag(offsets_.get(i));
      }
      if (((bitField0_ & 0x00000002) == 0x00000002)) {
        output.writeUInt32(3, size_);
      }
      if (((bitField0_ & 0x00000004) == 0x00000004)) {
        output.writeMessage(4, sint_);
      }
      if (((bitField0_ & 0x00000008) == 0x00000008)) {
        output.writeMessage(5, dbl_);
      }
      if (((bitField0_ & 0x00000010) == 0x00000010)) {
        output.writeMessage(6, flt_);
      }
      if (((bitField0_ & 0x00000020) == 0x00000020)) {
        output.writeMessage(7, byteDb_);
      }
      getUnknownFields().writeTo(output);
    }

    private int memoizedSerializedSize = -1;
    public int getSerializedSize() {
      int size = memoizedSerializedSize;
      if (size != -1) return size;

      size = 0;
      if (((bitField0_ & 0x00000001) == 0x00000001)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt32Size(1, type_);
      }
      {
        int dataSize = 0;
        for (int i = 0; i < offsets_.size(); i++) {
          dataSize += com.google.protobuf.CodedOutputStream
            .computeUInt32SizeNoTag(offsets_.get(i));
        }
        size += dataSize;
        if (!getOffsetsList().isEmpty()) {
          size += 1;
          size += com.google.protobuf.CodedOutputStream
              .computeInt32SizeNoTag(dataSize);
        }
        offsetsMemoizedSerializedSize = dataSize;
      }
      if (((bitField0_ & 0x00000002) == 0x00000002)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt32Size(3, size_);
      }
      if (((bitField0_ & 0x00000004) == 0x00000004)) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(4, sint_);
      }
      if (((bitField0_ & 0x00000008) == 0x00000008)) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(5, dbl_);
      }
      if (((bitField0_ & 0x00000010) == 0x00000010)) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(6, flt_);
      }
      if (((bitField0_ & 0x00000020) == 0x00000020)) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(7, byteDb_);
      }
      size += getUnknownFields().getSerializedSize();
      memoizedSerializedSize = size;
      return size;
    }

    private static final long serialVersionUID = 0L;
    @java.lang.Override
    protected java.lang.Object writeReplace()
        throws java.io.ObjectStreamException {
      return super.writeReplace();
    }

    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBuffer parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBuffer parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBuffer parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBuffer parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBuffer parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBuffer parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBuffer parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBuffer parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseDelimitedFrom(input, extensionRegistry);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBuffer parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return PARSER.parseFrom(input);
    }
    public static org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBuffer parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return PARSER.parseFrom(input, extensionRegistry);
    }

    public static Builder newBuilder() { return Builder.create(); }
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBuffer prototype) {
      return newBuilder().mergeFrom(prototype);
    }
    public Builder toBuilder() { return newBuilder(this); }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code DataBuffer}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessage.Builder
       implements org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBufferOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_DataBuffer_descriptor;
      }

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_DataBuffer_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBuffer.class, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBuffer.Builder.class);
      }

      // Construct using org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBuffer.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
          getSintFieldBuilder();
          getDblFieldBuilder();
          getFltFieldBuilder();
          getByteDbFieldBuilder();
        }
      }
      private static Builder create() {
        return new Builder();
      }

      public Builder clear() {
        super.clear();
        type_ = 0;
        bitField0_ = (bitField0_ & ~0x00000001);
        offsets_ = java.util.Collections.emptyList();
        bitField0_ = (bitField0_ & ~0x00000002);
        size_ = 0;
        bitField0_ = (bitField0_ & ~0x00000004);
        if (sintBuilder_ == null) {
          sint_ = org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer.getDefaultInstance();
        } else {
          sintBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000008);
        if (dblBuilder_ == null) {
          dbl_ = org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer.getDefaultInstance();
        } else {
          dblBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000010);
        if (fltBuilder_ == null) {
          flt_ = org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer.getDefaultInstance();
        } else {
          fltBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000020);
        if (byteDbBuilder_ == null) {
          byteDb_ = org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer.getDefaultInstance();
        } else {
          byteDbBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000040);
        return this;
      }

      public Builder clone() {
        return create().mergeFrom(buildPartial());
      }

      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.internal_static_DataBuffer_descriptor;
      }

      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBuffer getDefaultInstanceForType() {
        return org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBuffer.getDefaultInstance();
      }

      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBuffer build() {
        org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBuffer result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBuffer buildPartial() {
        org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBuffer result = new org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBuffer(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
          to_bitField0_ |= 0x00000001;
        }
        result.type_ = type_;
        if (((bitField0_ & 0x00000002) == 0x00000002)) {
          offsets_ = java.util.Collections.unmodifiableList(offsets_);
          bitField0_ = (bitField0_ & ~0x00000002);
        }
        result.offsets_ = offsets_;
        if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
          to_bitField0_ |= 0x00000002;
        }
        result.size_ = size_;
        if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
          to_bitField0_ |= 0x00000004;
        }
        if (sintBuilder_ == null) {
          result.sint_ = sint_;
        } else {
          result.sint_ = sintBuilder_.build();
        }
        if (((from_bitField0_ & 0x00000010) == 0x00000010)) {
          to_bitField0_ |= 0x00000008;
        }
        if (dblBuilder_ == null) {
          result.dbl_ = dbl_;
        } else {
          result.dbl_ = dblBuilder_.build();
        }
        if (((from_bitField0_ & 0x00000020) == 0x00000020)) {
          to_bitField0_ |= 0x00000010;
        }
        if (fltBuilder_ == null) {
          result.flt_ = flt_;
        } else {
          result.flt_ = fltBuilder_.build();
        }
        if (((from_bitField0_ & 0x00000040) == 0x00000040)) {
          to_bitField0_ |= 0x00000020;
        }
        if (byteDbBuilder_ == null) {
          result.byteDb_ = byteDb_;
        } else {
          result.byteDb_ = byteDbBuilder_.build();
        }
        result.bitField0_ = to_bitField0_;
        onBuilt();
        return result;
      }

      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBuffer) {
          return mergeFrom((org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBuffer)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBuffer other) {
        if (other == org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBuffer.getDefaultInstance()) return this;
        if (other.hasType()) {
          setType(other.getType());
        }
        if (!other.offsets_.isEmpty()) {
          if (offsets_.isEmpty()) {
            offsets_ = other.offsets_;
            bitField0_ = (bitField0_ & ~0x00000002);
          } else {
            ensureOffsetsIsMutable();
            offsets_.addAll(other.offsets_);
          }
          onChanged();
        }
        if (other.hasSize()) {
          setSize(other.getSize());
        }
        if (other.hasSint()) {
          mergeSint(other.getSint());
        }
        if (other.hasDbl()) {
          mergeDbl(other.getDbl());
        }
        if (other.hasFlt()) {
          mergeFlt(other.getFlt());
        }
        if (other.hasByteDb()) {
          mergeByteDb(other.getByteDb());
        }
        this.mergeUnknownFields(other.getUnknownFields());
        return this;
      }

      public final boolean isInitialized() {
        if (!hasType()) {
          
          return false;
        }
        if (!hasSize()) {
          
          return false;
        }
        return true;
      }

      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBuffer parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DataBuffer) e.getUnfinishedMessage();
          throw e;
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      // required uint32 type = 1;
      private int type_ ;
      /**
       * required uint32 type = 1;
       */
      public boolean hasType() {
        return ((bitField0_ & 0x00000001) == 0x00000001);
      }
      /**
       * required uint32 type = 1;
       */
      public int getType() {
        return type_;
      }
      /**
       * required uint32 type = 1;
       */
      public Builder setType(int value) {
        bitField0_ |= 0x00000001;
        type_ = value;
        onChanged();
        return this;
      }
      /**
       * required uint32 type = 1;
       */
      public Builder clearType() {
        bitField0_ = (bitField0_ & ~0x00000001);
        type_ = 0;
        onChanged();
        return this;
      }

      // repeated uint32 offsets = 2 [packed = true];
      private java.util.List offsets_ = java.util.Collections.emptyList();
      private void ensureOffsetsIsMutable() {
        if (!((bitField0_ & 0x00000002) == 0x00000002)) {
          offsets_ = new java.util.ArrayList(offsets_);
          bitField0_ |= 0x00000002;
         }
      }
      /**
       * repeated uint32 offsets = 2 [packed = true];
       */
      public java.util.List
          getOffsetsList() {
        return java.util.Collections.unmodifiableList(offsets_);
      }
      /**
       * repeated uint32 offsets = 2 [packed = true];
       */
      public int getOffsetsCount() {
        return offsets_.size();
      }
      /**
       * repeated uint32 offsets = 2 [packed = true];
       */
      public int getOffsets(int index) {
        return offsets_.get(index);
      }
      /**
       * repeated uint32 offsets = 2 [packed = true];
       */
      public Builder setOffsets(
          int index, int value) {
        ensureOffsetsIsMutable();
        offsets_.set(index, value);
        onChanged();
        return this;
      }
      /**
       * repeated uint32 offsets = 2 [packed = true];
       */
      public Builder addOffsets(int value) {
        ensureOffsetsIsMutable();
        offsets_.add(value);
        onChanged();
        return this;
      }
      /**
       * repeated uint32 offsets = 2 [packed = true];
       */
      public Builder addAllOffsets(
          java.lang.Iterable values) {
        ensureOffsetsIsMutable();
        super.addAll(values, offsets_);
        onChanged();
        return this;
      }
      /**
       * repeated uint32 offsets = 2 [packed = true];
       */
      public Builder clearOffsets() {
        offsets_ = java.util.Collections.emptyList();
        bitField0_ = (bitField0_ & ~0x00000002);
        onChanged();
        return this;
      }

      // required uint32 size = 3;
      private int size_ ;
      /**
       * required uint32 size = 3;
       */
      public boolean hasSize() {
        return ((bitField0_ & 0x00000004) == 0x00000004);
      }
      /**
       * required uint32 size = 3;
       */
      public int getSize() {
        return size_;
      }
      /**
       * required uint32 size = 3;
       */
      public Builder setSize(int value) {
        bitField0_ |= 0x00000004;
        size_ = value;
        onChanged();
        return this;
      }
      /**
       * required uint32 size = 3;
       */
      public Builder clearSize() {
        bitField0_ = (bitField0_ & ~0x00000004);
        size_ = 0;
        onChanged();
        return this;
      }

      // optional .SignedIntDataBuffer sint = 4;
      private org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer sint_ = org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer.getDefaultInstance();
      private com.google.protobuf.SingleFieldBuilder<
          org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer.Builder, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBufferOrBuilder> sintBuilder_;
      /**
       * optional .SignedIntDataBuffer sint = 4;
       */
      public boolean hasSint() {
        return ((bitField0_ & 0x00000008) == 0x00000008);
      }
      /**
       * optional .SignedIntDataBuffer sint = 4;
       */
      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer getSint() {
        if (sintBuilder_ == null) {
          return sint_;
        } else {
          return sintBuilder_.getMessage();
        }
      }
      /**
       * optional .SignedIntDataBuffer sint = 4;
       */
      public Builder setSint(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer value) {
        if (sintBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          sint_ = value;
          onChanged();
        } else {
          sintBuilder_.setMessage(value);
        }
        bitField0_ |= 0x00000008;
        return this;
      }
      /**
       * optional .SignedIntDataBuffer sint = 4;
       */
      public Builder setSint(
          org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer.Builder builderForValue) {
        if (sintBuilder_ == null) {
          sint_ = builderForValue.build();
          onChanged();
        } else {
          sintBuilder_.setMessage(builderForValue.build());
        }
        bitField0_ |= 0x00000008;
        return this;
      }
      /**
       * optional .SignedIntDataBuffer sint = 4;
       */
      public Builder mergeSint(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer value) {
        if (sintBuilder_ == null) {
          if (((bitField0_ & 0x00000008) == 0x00000008) &&
              sint_ != org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer.getDefaultInstance()) {
            sint_ =
              org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer.newBuilder(sint_).mergeFrom(value).buildPartial();
          } else {
            sint_ = value;
          }
          onChanged();
        } else {
          sintBuilder_.mergeFrom(value);
        }
        bitField0_ |= 0x00000008;
        return this;
      }
      /**
       * optional .SignedIntDataBuffer sint = 4;
       */
      public Builder clearSint() {
        if (sintBuilder_ == null) {
          sint_ = org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer.getDefaultInstance();
          onChanged();
        } else {
          sintBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000008);
        return this;
      }
      /**
       * optional .SignedIntDataBuffer sint = 4;
       */
      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer.Builder getSintBuilder() {
        bitField0_ |= 0x00000008;
        onChanged();
        return getSintFieldBuilder().getBuilder();
      }
      /**
       * optional .SignedIntDataBuffer sint = 4;
       */
      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBufferOrBuilder getSintOrBuilder() {
        if (sintBuilder_ != null) {
          return sintBuilder_.getMessageOrBuilder();
        } else {
          return sint_;
        }
      }
      /**
       * optional .SignedIntDataBuffer sint = 4;
       */
      private com.google.protobuf.SingleFieldBuilder<
          org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer.Builder, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBufferOrBuilder> 
          getSintFieldBuilder() {
        if (sintBuilder_ == null) {
          sintBuilder_ = new com.google.protobuf.SingleFieldBuilder<
              org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBuffer.Builder, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.SignedIntDataBufferOrBuilder>(
                  sint_,
                  getParentForChildren(),
                  isClean());
          sint_ = null;
        }
        return sintBuilder_;
      }

      // optional .DoubleDataBuffer dbl = 5;
      private org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer dbl_ = org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer.getDefaultInstance();
      private com.google.protobuf.SingleFieldBuilder<
          org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer.Builder, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBufferOrBuilder> dblBuilder_;
      /**
       * optional .DoubleDataBuffer dbl = 5;
       */
      public boolean hasDbl() {
        return ((bitField0_ & 0x00000010) == 0x00000010);
      }
      /**
       * optional .DoubleDataBuffer dbl = 5;
       */
      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer getDbl() {
        if (dblBuilder_ == null) {
          return dbl_;
        } else {
          return dblBuilder_.getMessage();
        }
      }
      /**
       * optional .DoubleDataBuffer dbl = 5;
       */
      public Builder setDbl(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer value) {
        if (dblBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          dbl_ = value;
          onChanged();
        } else {
          dblBuilder_.setMessage(value);
        }
        bitField0_ |= 0x00000010;
        return this;
      }
      /**
       * optional .DoubleDataBuffer dbl = 5;
       */
      public Builder setDbl(
          org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer.Builder builderForValue) {
        if (dblBuilder_ == null) {
          dbl_ = builderForValue.build();
          onChanged();
        } else {
          dblBuilder_.setMessage(builderForValue.build());
        }
        bitField0_ |= 0x00000010;
        return this;
      }
      /**
       * optional .DoubleDataBuffer dbl = 5;
       */
      public Builder mergeDbl(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer value) {
        if (dblBuilder_ == null) {
          if (((bitField0_ & 0x00000010) == 0x00000010) &&
              dbl_ != org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer.getDefaultInstance()) {
            dbl_ =
              org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer.newBuilder(dbl_).mergeFrom(value).buildPartial();
          } else {
            dbl_ = value;
          }
          onChanged();
        } else {
          dblBuilder_.mergeFrom(value);
        }
        bitField0_ |= 0x00000010;
        return this;
      }
      /**
       * optional .DoubleDataBuffer dbl = 5;
       */
      public Builder clearDbl() {
        if (dblBuilder_ == null) {
          dbl_ = org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer.getDefaultInstance();
          onChanged();
        } else {
          dblBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000010);
        return this;
      }
      /**
       * optional .DoubleDataBuffer dbl = 5;
       */
      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer.Builder getDblBuilder() {
        bitField0_ |= 0x00000010;
        onChanged();
        return getDblFieldBuilder().getBuilder();
      }
      /**
       * optional .DoubleDataBuffer dbl = 5;
       */
      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBufferOrBuilder getDblOrBuilder() {
        if (dblBuilder_ != null) {
          return dblBuilder_.getMessageOrBuilder();
        } else {
          return dbl_;
        }
      }
      /**
       * optional .DoubleDataBuffer dbl = 5;
       */
      private com.google.protobuf.SingleFieldBuilder<
          org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer.Builder, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBufferOrBuilder> 
          getDblFieldBuilder() {
        if (dblBuilder_ == null) {
          dblBuilder_ = new com.google.protobuf.SingleFieldBuilder<
              org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBuffer.Builder, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.DoubleDataBufferOrBuilder>(
                  dbl_,
                  getParentForChildren(),
                  isClean());
          dbl_ = null;
        }
        return dblBuilder_;
      }

      // optional .FloatDataBuffer flt = 6;
      private org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer flt_ = org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer.getDefaultInstance();
      private com.google.protobuf.SingleFieldBuilder<
          org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer.Builder, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBufferOrBuilder> fltBuilder_;
      /**
       * optional .FloatDataBuffer flt = 6;
       */
      public boolean hasFlt() {
        return ((bitField0_ & 0x00000020) == 0x00000020);
      }
      /**
       * optional .FloatDataBuffer flt = 6;
       */
      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer getFlt() {
        if (fltBuilder_ == null) {
          return flt_;
        } else {
          return fltBuilder_.getMessage();
        }
      }
      /**
       * optional .FloatDataBuffer flt = 6;
       */
      public Builder setFlt(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer value) {
        if (fltBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          flt_ = value;
          onChanged();
        } else {
          fltBuilder_.setMessage(value);
        }
        bitField0_ |= 0x00000020;
        return this;
      }
      /**
       * optional .FloatDataBuffer flt = 6;
       */
      public Builder setFlt(
          org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer.Builder builderForValue) {
        if (fltBuilder_ == null) {
          flt_ = builderForValue.build();
          onChanged();
        } else {
          fltBuilder_.setMessage(builderForValue.build());
        }
        bitField0_ |= 0x00000020;
        return this;
      }
      /**
       * optional .FloatDataBuffer flt = 6;
       */
      public Builder mergeFlt(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer value) {
        if (fltBuilder_ == null) {
          if (((bitField0_ & 0x00000020) == 0x00000020) &&
              flt_ != org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer.getDefaultInstance()) {
            flt_ =
              org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer.newBuilder(flt_).mergeFrom(value).buildPartial();
          } else {
            flt_ = value;
          }
          onChanged();
        } else {
          fltBuilder_.mergeFrom(value);
        }
        bitField0_ |= 0x00000020;
        return this;
      }
      /**
       * optional .FloatDataBuffer flt = 6;
       */
      public Builder clearFlt() {
        if (fltBuilder_ == null) {
          flt_ = org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer.getDefaultInstance();
          onChanged();
        } else {
          fltBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000020);
        return this;
      }
      /**
       * optional .FloatDataBuffer flt = 6;
       */
      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer.Builder getFltBuilder() {
        bitField0_ |= 0x00000020;
        onChanged();
        return getFltFieldBuilder().getBuilder();
      }
      /**
       * optional .FloatDataBuffer flt = 6;
       */
      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBufferOrBuilder getFltOrBuilder() {
        if (fltBuilder_ != null) {
          return fltBuilder_.getMessageOrBuilder();
        } else {
          return flt_;
        }
      }
      /**
       * optional .FloatDataBuffer flt = 6;
       */
      private com.google.protobuf.SingleFieldBuilder<
          org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer.Builder, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBufferOrBuilder> 
          getFltFieldBuilder() {
        if (fltBuilder_ == null) {
          fltBuilder_ = new com.google.protobuf.SingleFieldBuilder<
              org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBuffer.Builder, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.FloatDataBufferOrBuilder>(
                  flt_,
                  getParentForChildren(),
                  isClean());
          flt_ = null;
        }
        return fltBuilder_;
      }

      // optional .ByteDataBuffer byteDb = 7;
      private org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer byteDb_ = org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer.getDefaultInstance();
      private com.google.protobuf.SingleFieldBuilder<
          org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer.Builder, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBufferOrBuilder> byteDbBuilder_;
      /**
       * optional .ByteDataBuffer byteDb = 7;
       */
      public boolean hasByteDb() {
        return ((bitField0_ & 0x00000040) == 0x00000040);
      }
      /**
       * optional .ByteDataBuffer byteDb = 7;
       */
      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer getByteDb() {
        if (byteDbBuilder_ == null) {
          return byteDb_;
        } else {
          return byteDbBuilder_.getMessage();
        }
      }
      /**
       * optional .ByteDataBuffer byteDb = 7;
       */
      public Builder setByteDb(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer value) {
        if (byteDbBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          byteDb_ = value;
          onChanged();
        } else {
          byteDbBuilder_.setMessage(value);
        }
        bitField0_ |= 0x00000040;
        return this;
      }
      /**
       * optional .ByteDataBuffer byteDb = 7;
       */
      public Builder setByteDb(
          org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer.Builder builderForValue) {
        if (byteDbBuilder_ == null) {
          byteDb_ = builderForValue.build();
          onChanged();
        } else {
          byteDbBuilder_.setMessage(builderForValue.build());
        }
        bitField0_ |= 0x00000040;
        return this;
      }
      /**
       * optional .ByteDataBuffer byteDb = 7;
       */
      public Builder mergeByteDb(org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer value) {
        if (byteDbBuilder_ == null) {
          if (((bitField0_ & 0x00000040) == 0x00000040) &&
              byteDb_ != org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer.getDefaultInstance()) {
            byteDb_ =
              org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer.newBuilder(byteDb_).mergeFrom(value).buildPartial();
          } else {
            byteDb_ = value;
          }
          onChanged();
        } else {
          byteDbBuilder_.mergeFrom(value);
        }
        bitField0_ |= 0x00000040;
        return this;
      }
      /**
       * optional .ByteDataBuffer byteDb = 7;
       */
      public Builder clearByteDb() {
        if (byteDbBuilder_ == null) {
          byteDb_ = org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer.getDefaultInstance();
          onChanged();
        } else {
          byteDbBuilder_.clear();
        }
        bitField0_ = (bitField0_ & ~0x00000040);
        return this;
      }
      /**
       * optional .ByteDataBuffer byteDb = 7;
       */
      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer.Builder getByteDbBuilder() {
        bitField0_ |= 0x00000040;
        onChanged();
        return getByteDbFieldBuilder().getBuilder();
      }
      /**
       * optional .ByteDataBuffer byteDb = 7;
       */
      public org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBufferOrBuilder getByteDbOrBuilder() {
        if (byteDbBuilder_ != null) {
          return byteDbBuilder_.getMessageOrBuilder();
        } else {
          return byteDb_;
        }
      }
      /**
       * optional .ByteDataBuffer byteDb = 7;
       */
      private com.google.protobuf.SingleFieldBuilder<
          org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer.Builder, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBufferOrBuilder> 
          getByteDbFieldBuilder() {
        if (byteDbBuilder_ == null) {
          byteDbBuilder_ = new com.google.protobuf.SingleFieldBuilder<
              org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBuffer.Builder, org.locationtech.geowave.adapter.raster.protobuf.DataBufferProtos.ByteDataBufferOrBuilder>(
                  byteDb_,
                  getParentForChildren(),
                  isClean());
          byteDb_ = null;
        }
        return byteDbBuilder_;
      }

      // @@protoc_insertion_point(builder_scope:DataBuffer)
    }

    static {
      defaultInstance = new DataBuffer(true);
      defaultInstance.initFields();
    }

    // @@protoc_insertion_point(class_scope:DataBuffer)
  }

  private static com.google.protobuf.Descriptors.Descriptor
    internal_static_SignedIntArray_descriptor;
  private static
    com.google.protobuf.GeneratedMessage.FieldAccessorTable
      internal_static_SignedIntArray_fieldAccessorTable;
  private static com.google.protobuf.Descriptors.Descriptor
    internal_static_DoubleArray_descriptor;
  private static
    com.google.protobuf.GeneratedMessage.FieldAccessorTable
      internal_static_DoubleArray_fieldAccessorTable;
  private static com.google.protobuf.Descriptors.Descriptor
    internal_static_FloatArray_descriptor;
  private static
    com.google.protobuf.GeneratedMessage.FieldAccessorTable
      internal_static_FloatArray_fieldAccessorTable;
  private static com.google.protobuf.Descriptors.Descriptor
    internal_static_SignedIntDataBuffer_descriptor;
  private static
    com.google.protobuf.GeneratedMessage.FieldAccessorTable
      internal_static_SignedIntDataBuffer_fieldAccessorTable;
  private static com.google.protobuf.Descriptors.Descriptor
    internal_static_DoubleDataBuffer_descriptor;
  private static
    com.google.protobuf.GeneratedMessage.FieldAccessorTable
      internal_static_DoubleDataBuffer_fieldAccessorTable;
  private static com.google.protobuf.Descriptors.Descriptor
    internal_static_FloatDataBuffer_descriptor;
  private static
    com.google.protobuf.GeneratedMessage.FieldAccessorTable
      internal_static_FloatDataBuffer_fieldAccessorTable;
  private static com.google.protobuf.Descriptors.Descriptor
    internal_static_ByteDataBuffer_descriptor;
  private static
    com.google.protobuf.GeneratedMessage.FieldAccessorTable
      internal_static_ByteDataBuffer_fieldAccessorTable;
  private static com.google.protobuf.Descriptors.Descriptor
    internal_static_DataBuffer_descriptor;
  private static
    com.google.protobuf.GeneratedMessage.FieldAccessorTable
      internal_static_DataBuffer_fieldAccessorTable;

  public static com.google.protobuf.Descriptors.FileDescriptor
      getDescriptor() {
    return descriptor;
  }
  private static com.google.protobuf.Descriptors.FileDescriptor
      descriptor;
  static {
    java.lang.String[] descriptorData = {
      "\n\020DataBuffer.proto\"%\n\016SignedIntArray\022\023\n\007" +
      "samples\030\001 \003(\021B\002\020\001\"\"\n\013DoubleArray\022\023\n\007samp" +
      "les\030\001 \003(\001B\002\020\001\"!\n\nFloatArray\022\023\n\007samples\030\001" +
      " \003(\002B\002\020\001\"5\n\023SignedIntDataBuffer\022\036\n\005banks" +
      "\030\001 \003(\0132\017.SignedIntArray\"/\n\020DoubleDataBuf" +
      "fer\022\033\n\005banks\030\001 \003(\0132\014.DoubleArray\"-\n\017Floa" +
      "tDataBuffer\022\032\n\005banks\030\001 \003(\0132\013.FloatArray\"" +
      "\037\n\016ByteDataBuffer\022\r\n\005banks\030\001 \003(\014\"\301\001\n\nDat" +
      "aBuffer\022\014\n\004type\030\001 \002(\r\022\023\n\007offsets\030\002 \003(\rB\002" +
      "\020\001\022\014\n\004size\030\003 \002(\r\022\"\n\004sint\030\004 \001(\0132\024.SignedI",
      "ntDataBuffer\022\036\n\003dbl\030\005 \001(\0132\021.DoubleDataBu" +
      "ffer\022\035\n\003flt\030\006 \001(\0132\020.FloatDataBuffer\022\037\n\006b" +
      "yteDb\030\007 \001(\0132\017.ByteDataBufferBF\n0org.loca" +
      "tiontech.geowave.adapter.raster.protobuf" +
      "B\020DataBufferProtosH\001"
    };
    com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner =
      new com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner() {
        public com.google.protobuf.ExtensionRegistry assignDescriptors(
            com.google.protobuf.Descriptors.FileDescriptor root) {
          descriptor = root;
          internal_static_SignedIntArray_descriptor =
            getDescriptor().getMessageTypes().get(0);
          internal_static_SignedIntArray_fieldAccessorTable = new
            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
              internal_static_SignedIntArray_descriptor,
              new java.lang.String[] { "Samples", });
          internal_static_DoubleArray_descriptor =
            getDescriptor().getMessageTypes().get(1);
          internal_static_DoubleArray_fieldAccessorTable = new
            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
              internal_static_DoubleArray_descriptor,
              new java.lang.String[] { "Samples", });
          internal_static_FloatArray_descriptor =
            getDescriptor().getMessageTypes().get(2);
          internal_static_FloatArray_fieldAccessorTable = new
            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
              internal_static_FloatArray_descriptor,
              new java.lang.String[] { "Samples", });
          internal_static_SignedIntDataBuffer_descriptor =
            getDescriptor().getMessageTypes().get(3);
          internal_static_SignedIntDataBuffer_fieldAccessorTable = new
            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
              internal_static_SignedIntDataBuffer_descriptor,
              new java.lang.String[] { "Banks", });
          internal_static_DoubleDataBuffer_descriptor =
            getDescriptor().getMessageTypes().get(4);
          internal_static_DoubleDataBuffer_fieldAccessorTable = new
            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
              internal_static_DoubleDataBuffer_descriptor,
              new java.lang.String[] { "Banks", });
          internal_static_FloatDataBuffer_descriptor =
            getDescriptor().getMessageTypes().get(5);
          internal_static_FloatDataBuffer_fieldAccessorTable = new
            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
              internal_static_FloatDataBuffer_descriptor,
              new java.lang.String[] { "Banks", });
          internal_static_ByteDataBuffer_descriptor =
            getDescriptor().getMessageTypes().get(6);
          internal_static_ByteDataBuffer_fieldAccessorTable = new
            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
              internal_static_ByteDataBuffer_descriptor,
              new java.lang.String[] { "Banks", });
          internal_static_DataBuffer_descriptor =
            getDescriptor().getMessageTypes().get(7);
          internal_static_DataBuffer_fieldAccessorTable = new
            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
              internal_static_DataBuffer_descriptor,
              new java.lang.String[] { "Type", "Offsets", "Size", "Sint", "Dbl", "Flt", "ByteDb", });
          return null;
        }
      };
    com.google.protobuf.Descriptors.FileDescriptor
      .internalBuildGeneratedFileFrom(descriptorData,
        new com.google.protobuf.Descriptors.FileDescriptor[] {
        }, assigner);
  }

  // @@protoc_insertion_point(outer_class_scope)
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy