Package biopb.tensor

Class TensorDescriptor.Builder

java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<BuilderT>
com.google.protobuf.GeneratedMessageV3.Builder<TensorDescriptor.Builder>
biopb.tensor.TensorDescriptor.Builder
All Implemented Interfaces:
TensorDescriptorOrBuilder, com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, Cloneable
Enclosing class:
TensorDescriptor

public static final class TensorDescriptor.Builder extends com.google.protobuf.GeneratedMessageV3.Builder<TensorDescriptor.Builder> implements TensorDescriptorOrBuilder
 Encoded into FlightDescriptor.cmd bytes (identifies the tensor)
 
Protobuf type biopb.tensor.TensorDescriptor
  • Method Details

    • getDescriptor

      public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
    • internalGetFieldAccessorTable

      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
      Specified by:
      internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3.Builder<TensorDescriptor.Builder>
    • clear

      public TensorDescriptor.Builder clear()
      Specified by:
      clear in interface com.google.protobuf.Message.Builder
      Specified by:
      clear in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      clear in class com.google.protobuf.GeneratedMessageV3.Builder<TensorDescriptor.Builder>
    • getDescriptorForType

      public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
      Specified by:
      getDescriptorForType in interface com.google.protobuf.Message.Builder
      Specified by:
      getDescriptorForType in interface com.google.protobuf.MessageOrBuilder
      Overrides:
      getDescriptorForType in class com.google.protobuf.GeneratedMessageV3.Builder<TensorDescriptor.Builder>
    • getDefaultInstanceForType

      public TensorDescriptor getDefaultInstanceForType()
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder
    • build

      public TensorDescriptor build()
      Specified by:
      build in interface com.google.protobuf.Message.Builder
      Specified by:
      build in interface com.google.protobuf.MessageLite.Builder
    • buildPartial

      public TensorDescriptor buildPartial()
      Specified by:
      buildPartial in interface com.google.protobuf.Message.Builder
      Specified by:
      buildPartial in interface com.google.protobuf.MessageLite.Builder
    • clone

      public TensorDescriptor.Builder clone()
      Specified by:
      clone in interface com.google.protobuf.Message.Builder
      Specified by:
      clone in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      clone in class com.google.protobuf.GeneratedMessageV3.Builder<TensorDescriptor.Builder>
    • setField

      public TensorDescriptor.Builder setField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
      Specified by:
      setField in interface com.google.protobuf.Message.Builder
      Overrides:
      setField in class com.google.protobuf.GeneratedMessageV3.Builder<TensorDescriptor.Builder>
    • clearField

      public TensorDescriptor.Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field)
      Specified by:
      clearField in interface com.google.protobuf.Message.Builder
      Overrides:
      clearField in class com.google.protobuf.GeneratedMessageV3.Builder<TensorDescriptor.Builder>
    • clearOneof

      public TensorDescriptor.Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)
      Specified by:
      clearOneof in interface com.google.protobuf.Message.Builder
      Overrides:
      clearOneof in class com.google.protobuf.GeneratedMessageV3.Builder<TensorDescriptor.Builder>
    • setRepeatedField

      public TensorDescriptor.Builder setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value)
      Specified by:
      setRepeatedField in interface com.google.protobuf.Message.Builder
      Overrides:
      setRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<TensorDescriptor.Builder>
    • addRepeatedField

      public TensorDescriptor.Builder addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value)
      Specified by:
      addRepeatedField in interface com.google.protobuf.Message.Builder
      Overrides:
      addRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<TensorDescriptor.Builder>
    • mergeFrom

      public TensorDescriptor.Builder mergeFrom(com.google.protobuf.Message other)
      Specified by:
      mergeFrom in interface com.google.protobuf.Message.Builder
      Overrides:
      mergeFrom in class com.google.protobuf.AbstractMessage.Builder<TensorDescriptor.Builder>
    • mergeFrom

      public TensorDescriptor.Builder mergeFrom(TensorDescriptor other)
    • isInitialized

      public final boolean isInitialized()
      Specified by:
      isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
      Overrides:
      isInitialized in class com.google.protobuf.GeneratedMessageV3.Builder<TensorDescriptor.Builder>
    • mergeFrom

      public TensorDescriptor.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Specified by:
      mergeFrom in interface com.google.protobuf.Message.Builder
      Specified by:
      mergeFrom in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      mergeFrom in class com.google.protobuf.AbstractMessage.Builder<TensorDescriptor.Builder>
      Throws:
      IOException
    • getArrayId

      public String getArrayId()
       Globally-unique tensor identifier and primary key (see the tensor identity
       policy above). Constructed as source_id (single-tensor) or source_id/field
       (multi-tensor). Same value as TensorReadOption.array_id.
       
      string array_id = 1;
      Specified by:
      getArrayId in interface TensorDescriptorOrBuilder
      Returns:
      The arrayId.
    • getArrayIdBytes

      public com.google.protobuf.ByteString getArrayIdBytes()
       Globally-unique tensor identifier and primary key (see the tensor identity
       policy above). Constructed as source_id (single-tensor) or source_id/field
       (multi-tensor). Same value as TensorReadOption.array_id.
       
      string array_id = 1;
      Specified by:
      getArrayIdBytes in interface TensorDescriptorOrBuilder
      Returns:
      The bytes for arrayId.
    • setArrayId

      public TensorDescriptor.Builder setArrayId(String value)
       Globally-unique tensor identifier and primary key (see the tensor identity
       policy above). Constructed as source_id (single-tensor) or source_id/field
       (multi-tensor). Same value as TensorReadOption.array_id.
       
      string array_id = 1;
      Parameters:
      value - The arrayId to set.
      Returns:
      This builder for chaining.
    • clearArrayId

      public TensorDescriptor.Builder clearArrayId()
       Globally-unique tensor identifier and primary key (see the tensor identity
       policy above). Constructed as source_id (single-tensor) or source_id/field
       (multi-tensor). Same value as TensorReadOption.array_id.
       
      string array_id = 1;
      Returns:
      This builder for chaining.
    • setArrayIdBytes

      public TensorDescriptor.Builder setArrayIdBytes(com.google.protobuf.ByteString value)
       Globally-unique tensor identifier and primary key (see the tensor identity
       policy above). Constructed as source_id (single-tensor) or source_id/field
       (multi-tensor). Same value as TensorReadOption.array_id.
       
      string array_id = 1;
      Parameters:
      value - The bytes for arrayId to set.
      Returns:
      This builder for chaining.
    • getDimLabelsList

      public com.google.protobuf.ProtocolStringList getDimLabelsList()
       Maps dimension index to semantic label (e.g., ["z", "y", "x"])
       
      repeated string dim_labels = 2;
      Specified by:
      getDimLabelsList in interface TensorDescriptorOrBuilder
      Returns:
      A list containing the dimLabels.
    • getDimLabelsCount

      public int getDimLabelsCount()
       Maps dimension index to semantic label (e.g., ["z", "y", "x"])
       
      repeated string dim_labels = 2;
      Specified by:
      getDimLabelsCount in interface TensorDescriptorOrBuilder
      Returns:
      The count of dimLabels.
    • getDimLabels

      public String getDimLabels(int index)
       Maps dimension index to semantic label (e.g., ["z", "y", "x"])
       
      repeated string dim_labels = 2;
      Specified by:
      getDimLabels in interface TensorDescriptorOrBuilder
      Parameters:
      index - The index of the element to return.
      Returns:
      The dimLabels at the given index.
    • getDimLabelsBytes

      public com.google.protobuf.ByteString getDimLabelsBytes(int index)
       Maps dimension index to semantic label (e.g., ["z", "y", "x"])
       
      repeated string dim_labels = 2;
      Specified by:
      getDimLabelsBytes in interface TensorDescriptorOrBuilder
      Parameters:
      index - The index of the value to return.
      Returns:
      The bytes of the dimLabels at the given index.
    • setDimLabels

      public TensorDescriptor.Builder setDimLabels(int index, String value)
       Maps dimension index to semantic label (e.g., ["z", "y", "x"])
       
      repeated string dim_labels = 2;
      Parameters:
      index - The index to set the value at.
      value - The dimLabels to set.
      Returns:
      This builder for chaining.
    • addDimLabels

      public TensorDescriptor.Builder addDimLabels(String value)
       Maps dimension index to semantic label (e.g., ["z", "y", "x"])
       
      repeated string dim_labels = 2;
      Parameters:
      value - The dimLabels to add.
      Returns:
      This builder for chaining.
    • addAllDimLabels

      public TensorDescriptor.Builder addAllDimLabels(Iterable<String> values)
       Maps dimension index to semantic label (e.g., ["z", "y", "x"])
       
      repeated string dim_labels = 2;
      Parameters:
      values - The dimLabels to add.
      Returns:
      This builder for chaining.
    • clearDimLabels

      public TensorDescriptor.Builder clearDimLabels()
       Maps dimension index to semantic label (e.g., ["z", "y", "x"])
       
      repeated string dim_labels = 2;
      Returns:
      This builder for chaining.
    • addDimLabelsBytes

      public TensorDescriptor.Builder addDimLabelsBytes(com.google.protobuf.ByteString value)
       Maps dimension index to semantic label (e.g., ["z", "y", "x"])
       
      repeated string dim_labels = 2;
      Parameters:
      value - The bytes of the dimLabels to add.
      Returns:
      This builder for chaining.
    • getShapeList

      public List<Long> getShapeList()
       Full array shape (per dimension)
       
      repeated int64 shape = 3;
      Specified by:
      getShapeList in interface TensorDescriptorOrBuilder
      Returns:
      A list containing the shape.
    • getShapeCount

      public int getShapeCount()
       Full array shape (per dimension)
       
      repeated int64 shape = 3;
      Specified by:
      getShapeCount in interface TensorDescriptorOrBuilder
      Returns:
      The count of shape.
    • getShape

      public long getShape(int index)
       Full array shape (per dimension)
       
      repeated int64 shape = 3;
      Specified by:
      getShape in interface TensorDescriptorOrBuilder
      Parameters:
      index - The index of the element to return.
      Returns:
      The shape at the given index.
    • setShape

      public TensorDescriptor.Builder setShape(int index, long value)
       Full array shape (per dimension)
       
      repeated int64 shape = 3;
      Parameters:
      index - The index to set the value at.
      value - The shape to set.
      Returns:
      This builder for chaining.
    • addShape

      public TensorDescriptor.Builder addShape(long value)
       Full array shape (per dimension)
       
      repeated int64 shape = 3;
      Parameters:
      value - The shape to add.
      Returns:
      This builder for chaining.
    • addAllShape

      public TensorDescriptor.Builder addAllShape(Iterable<? extends Long> values)
       Full array shape (per dimension)
       
      repeated int64 shape = 3;
      Parameters:
      values - The shape to add.
      Returns:
      This builder for chaining.
    • clearShape

      public TensorDescriptor.Builder clearShape()
       Full array shape (per dimension)
       
      repeated int64 shape = 3;
      Returns:
      This builder for chaining.
    • getChunkShapeList

      public List<Long> getChunkShapeList()
       Nominal transfer chunk size per dimension (actual may vary for edge
       chunks). This is the grid the tensor's chunks are delivered on, chosen by
       the server-side adapter that knows how the bytes sit on disk; it is not the
       store's own block size, and no read is issued at any other granularity.
      
       On a *response* it is the grid you will read on -- the tensor's own grid in
       a describe, and for a scaled read the grid of that response's (already
       reduced) chunks. It is answered ONLY by GetFlightInfo, which resolves the
       tensor adapter first: the grid depends on facts that exist only once a
       specific tensor/scene is bound (its backing chunk layout, its dimension
       labels, format layout rules, the native pyramid level, the request scale),
       so a source-level listing cannot own it. The catalog and
       DataSourceDescriptor.tensors therefore carry it EMPTY -- like pyramid and
       physical_scale -- and an empty grid is not a usable fallback: a client that
       needs one for Dask construction, tiling or prefetching must describe the
       tensor. (Empty also means "old server"; the field has always been optional.)
      
       On an upload *request* it is the grid you will write on -- it sets the
       created store's blocking and the bounds every chunk must land on.
       
      repeated int64 chunk_shape = 4;
      Specified by:
      getChunkShapeList in interface TensorDescriptorOrBuilder
      Returns:
      A list containing the chunkShape.
    • getChunkShapeCount

      public int getChunkShapeCount()
       Nominal transfer chunk size per dimension (actual may vary for edge
       chunks). This is the grid the tensor's chunks are delivered on, chosen by
       the server-side adapter that knows how the bytes sit on disk; it is not the
       store's own block size, and no read is issued at any other granularity.
      
       On a *response* it is the grid you will read on -- the tensor's own grid in
       a describe, and for a scaled read the grid of that response's (already
       reduced) chunks. It is answered ONLY by GetFlightInfo, which resolves the
       tensor adapter first: the grid depends on facts that exist only once a
       specific tensor/scene is bound (its backing chunk layout, its dimension
       labels, format layout rules, the native pyramid level, the request scale),
       so a source-level listing cannot own it. The catalog and
       DataSourceDescriptor.tensors therefore carry it EMPTY -- like pyramid and
       physical_scale -- and an empty grid is not a usable fallback: a client that
       needs one for Dask construction, tiling or prefetching must describe the
       tensor. (Empty also means "old server"; the field has always been optional.)
      
       On an upload *request* it is the grid you will write on -- it sets the
       created store's blocking and the bounds every chunk must land on.
       
      repeated int64 chunk_shape = 4;
      Specified by:
      getChunkShapeCount in interface TensorDescriptorOrBuilder
      Returns:
      The count of chunkShape.
    • getChunkShape

      public long getChunkShape(int index)
       Nominal transfer chunk size per dimension (actual may vary for edge
       chunks). This is the grid the tensor's chunks are delivered on, chosen by
       the server-side adapter that knows how the bytes sit on disk; it is not the
       store's own block size, and no read is issued at any other granularity.
      
       On a *response* it is the grid you will read on -- the tensor's own grid in
       a describe, and for a scaled read the grid of that response's (already
       reduced) chunks. It is answered ONLY by GetFlightInfo, which resolves the
       tensor adapter first: the grid depends on facts that exist only once a
       specific tensor/scene is bound (its backing chunk layout, its dimension
       labels, format layout rules, the native pyramid level, the request scale),
       so a source-level listing cannot own it. The catalog and
       DataSourceDescriptor.tensors therefore carry it EMPTY -- like pyramid and
       physical_scale -- and an empty grid is not a usable fallback: a client that
       needs one for Dask construction, tiling or prefetching must describe the
       tensor. (Empty also means "old server"; the field has always been optional.)
      
       On an upload *request* it is the grid you will write on -- it sets the
       created store's blocking and the bounds every chunk must land on.
       
      repeated int64 chunk_shape = 4;
      Specified by:
      getChunkShape in interface TensorDescriptorOrBuilder
      Parameters:
      index - The index of the element to return.
      Returns:
      The chunkShape at the given index.
    • setChunkShape

      public TensorDescriptor.Builder setChunkShape(int index, long value)
       Nominal transfer chunk size per dimension (actual may vary for edge
       chunks). This is the grid the tensor's chunks are delivered on, chosen by
       the server-side adapter that knows how the bytes sit on disk; it is not the
       store's own block size, and no read is issued at any other granularity.
      
       On a *response* it is the grid you will read on -- the tensor's own grid in
       a describe, and for a scaled read the grid of that response's (already
       reduced) chunks. It is answered ONLY by GetFlightInfo, which resolves the
       tensor adapter first: the grid depends on facts that exist only once a
       specific tensor/scene is bound (its backing chunk layout, its dimension
       labels, format layout rules, the native pyramid level, the request scale),
       so a source-level listing cannot own it. The catalog and
       DataSourceDescriptor.tensors therefore carry it EMPTY -- like pyramid and
       physical_scale -- and an empty grid is not a usable fallback: a client that
       needs one for Dask construction, tiling or prefetching must describe the
       tensor. (Empty also means "old server"; the field has always been optional.)
      
       On an upload *request* it is the grid you will write on -- it sets the
       created store's blocking and the bounds every chunk must land on.
       
      repeated int64 chunk_shape = 4;
      Parameters:
      index - The index to set the value at.
      value - The chunkShape to set.
      Returns:
      This builder for chaining.
    • addChunkShape

      public TensorDescriptor.Builder addChunkShape(long value)
       Nominal transfer chunk size per dimension (actual may vary for edge
       chunks). This is the grid the tensor's chunks are delivered on, chosen by
       the server-side adapter that knows how the bytes sit on disk; it is not the
       store's own block size, and no read is issued at any other granularity.
      
       On a *response* it is the grid you will read on -- the tensor's own grid in
       a describe, and for a scaled read the grid of that response's (already
       reduced) chunks. It is answered ONLY by GetFlightInfo, which resolves the
       tensor adapter first: the grid depends on facts that exist only once a
       specific tensor/scene is bound (its backing chunk layout, its dimension
       labels, format layout rules, the native pyramid level, the request scale),
       so a source-level listing cannot own it. The catalog and
       DataSourceDescriptor.tensors therefore carry it EMPTY -- like pyramid and
       physical_scale -- and an empty grid is not a usable fallback: a client that
       needs one for Dask construction, tiling or prefetching must describe the
       tensor. (Empty also means "old server"; the field has always been optional.)
      
       On an upload *request* it is the grid you will write on -- it sets the
       created store's blocking and the bounds every chunk must land on.
       
      repeated int64 chunk_shape = 4;
      Parameters:
      value - The chunkShape to add.
      Returns:
      This builder for chaining.
    • addAllChunkShape

      public TensorDescriptor.Builder addAllChunkShape(Iterable<? extends Long> values)
       Nominal transfer chunk size per dimension (actual may vary for edge
       chunks). This is the grid the tensor's chunks are delivered on, chosen by
       the server-side adapter that knows how the bytes sit on disk; it is not the
       store's own block size, and no read is issued at any other granularity.
      
       On a *response* it is the grid you will read on -- the tensor's own grid in
       a describe, and for a scaled read the grid of that response's (already
       reduced) chunks. It is answered ONLY by GetFlightInfo, which resolves the
       tensor adapter first: the grid depends on facts that exist only once a
       specific tensor/scene is bound (its backing chunk layout, its dimension
       labels, format layout rules, the native pyramid level, the request scale),
       so a source-level listing cannot own it. The catalog and
       DataSourceDescriptor.tensors therefore carry it EMPTY -- like pyramid and
       physical_scale -- and an empty grid is not a usable fallback: a client that
       needs one for Dask construction, tiling or prefetching must describe the
       tensor. (Empty also means "old server"; the field has always been optional.)
      
       On an upload *request* it is the grid you will write on -- it sets the
       created store's blocking and the bounds every chunk must land on.
       
      repeated int64 chunk_shape = 4;
      Parameters:
      values - The chunkShape to add.
      Returns:
      This builder for chaining.
    • clearChunkShape

      public TensorDescriptor.Builder clearChunkShape()
       Nominal transfer chunk size per dimension (actual may vary for edge
       chunks). This is the grid the tensor's chunks are delivered on, chosen by
       the server-side adapter that knows how the bytes sit on disk; it is not the
       store's own block size, and no read is issued at any other granularity.
      
       On a *response* it is the grid you will read on -- the tensor's own grid in
       a describe, and for a scaled read the grid of that response's (already
       reduced) chunks. It is answered ONLY by GetFlightInfo, which resolves the
       tensor adapter first: the grid depends on facts that exist only once a
       specific tensor/scene is bound (its backing chunk layout, its dimension
       labels, format layout rules, the native pyramid level, the request scale),
       so a source-level listing cannot own it. The catalog and
       DataSourceDescriptor.tensors therefore carry it EMPTY -- like pyramid and
       physical_scale -- and an empty grid is not a usable fallback: a client that
       needs one for Dask construction, tiling or prefetching must describe the
       tensor. (Empty also means "old server"; the field has always been optional.)
      
       On an upload *request* it is the grid you will write on -- it sets the
       created store's blocking and the bounds every chunk must land on.
       
      repeated int64 chunk_shape = 4;
      Returns:
      This builder for chaining.
    • getDtype

      public String getDtype()
       Element dtype (numpy-style, e.g., "uint8", "float32", "float64")
       
      string dtype = 5;
      Specified by:
      getDtype in interface TensorDescriptorOrBuilder
      Returns:
      The dtype.
    • getDtypeBytes

      public com.google.protobuf.ByteString getDtypeBytes()
       Element dtype (numpy-style, e.g., "uint8", "float32", "float64")
       
      string dtype = 5;
      Specified by:
      getDtypeBytes in interface TensorDescriptorOrBuilder
      Returns:
      The bytes for dtype.
    • setDtype

      public TensorDescriptor.Builder setDtype(String value)
       Element dtype (numpy-style, e.g., "uint8", "float32", "float64")
       
      string dtype = 5;
      Parameters:
      value - The dtype to set.
      Returns:
      This builder for chaining.
    • clearDtype

      public TensorDescriptor.Builder clearDtype()
       Element dtype (numpy-style, e.g., "uint8", "float32", "float64")
       
      string dtype = 5;
      Returns:
      This builder for chaining.
    • setDtypeBytes

      public TensorDescriptor.Builder setDtypeBytes(com.google.protobuf.ByteString value)
       Element dtype (numpy-style, e.g., "uint8", "float32", "float64")
       
      string dtype = 5;
      Parameters:
      value - The bytes for dtype to set.
      Returns:
      This builder for chaining.
    • hasSliceHint

      public boolean hasSliceHint()
       Optional slice hint - if provided, GetFlightInfo returns only chunks
       covering this range. Leave unset/null to return all chunks.
       
      .biopb.tensor.SliceHint slice_hint = 6;
      Specified by:
      hasSliceHint in interface TensorDescriptorOrBuilder
      Returns:
      Whether the sliceHint field is set.
    • getSliceHint

      public SliceHint getSliceHint()
       Optional slice hint - if provided, GetFlightInfo returns only chunks
       covering this range. Leave unset/null to return all chunks.
       
      .biopb.tensor.SliceHint slice_hint = 6;
      Specified by:
      getSliceHint in interface TensorDescriptorOrBuilder
      Returns:
      The sliceHint.
    • setSliceHint

      public TensorDescriptor.Builder setSliceHint(SliceHint value)
       Optional slice hint - if provided, GetFlightInfo returns only chunks
       covering this range. Leave unset/null to return all chunks.
       
      .biopb.tensor.SliceHint slice_hint = 6;
    • setSliceHint

      public TensorDescriptor.Builder setSliceHint(SliceHint.Builder builderForValue)
       Optional slice hint - if provided, GetFlightInfo returns only chunks
       covering this range. Leave unset/null to return all chunks.
       
      .biopb.tensor.SliceHint slice_hint = 6;
    • mergeSliceHint

      public TensorDescriptor.Builder mergeSliceHint(SliceHint value)
       Optional slice hint - if provided, GetFlightInfo returns only chunks
       covering this range. Leave unset/null to return all chunks.
       
      .biopb.tensor.SliceHint slice_hint = 6;
    • clearSliceHint

      public TensorDescriptor.Builder clearSliceHint()
       Optional slice hint - if provided, GetFlightInfo returns only chunks
       covering this range. Leave unset/null to return all chunks.
       
      .biopb.tensor.SliceHint slice_hint = 6;
    • getSliceHintBuilder

      public SliceHint.Builder getSliceHintBuilder()
       Optional slice hint - if provided, GetFlightInfo returns only chunks
       covering this range. Leave unset/null to return all chunks.
       
      .biopb.tensor.SliceHint slice_hint = 6;
    • getSliceHintOrBuilder

      public SliceHintOrBuilder getSliceHintOrBuilder()
       Optional slice hint - if provided, GetFlightInfo returns only chunks
       covering this range. Leave unset/null to return all chunks.
       
      .biopb.tensor.SliceHint slice_hint = 6;
      Specified by:
      getSliceHintOrBuilder in interface TensorDescriptorOrBuilder
    • getScaleHintList

      public List<Long> getScaleHintList()
       Per-dimension integer downsampling factors for virtual/scaled reads.
       Example: [1, 8, 8] means full resolution on first axis, 8x reduced on remaining.
       These do not change tensor identity, only how a specific read request is planned.
       
      repeated int64 scale_hint = 7;
      Specified by:
      getScaleHintList in interface TensorDescriptorOrBuilder
      Returns:
      A list containing the scaleHint.
    • getScaleHintCount

      public int getScaleHintCount()
       Per-dimension integer downsampling factors for virtual/scaled reads.
       Example: [1, 8, 8] means full resolution on first axis, 8x reduced on remaining.
       These do not change tensor identity, only how a specific read request is planned.
       
      repeated int64 scale_hint = 7;
      Specified by:
      getScaleHintCount in interface TensorDescriptorOrBuilder
      Returns:
      The count of scaleHint.
    • getScaleHint

      public long getScaleHint(int index)
       Per-dimension integer downsampling factors for virtual/scaled reads.
       Example: [1, 8, 8] means full resolution on first axis, 8x reduced on remaining.
       These do not change tensor identity, only how a specific read request is planned.
       
      repeated int64 scale_hint = 7;
      Specified by:
      getScaleHint in interface TensorDescriptorOrBuilder
      Parameters:
      index - The index of the element to return.
      Returns:
      The scaleHint at the given index.
    • setScaleHint

      public TensorDescriptor.Builder setScaleHint(int index, long value)
       Per-dimension integer downsampling factors for virtual/scaled reads.
       Example: [1, 8, 8] means full resolution on first axis, 8x reduced on remaining.
       These do not change tensor identity, only how a specific read request is planned.
       
      repeated int64 scale_hint = 7;
      Parameters:
      index - The index to set the value at.
      value - The scaleHint to set.
      Returns:
      This builder for chaining.
    • addScaleHint

      public TensorDescriptor.Builder addScaleHint(long value)
       Per-dimension integer downsampling factors for virtual/scaled reads.
       Example: [1, 8, 8] means full resolution on first axis, 8x reduced on remaining.
       These do not change tensor identity, only how a specific read request is planned.
       
      repeated int64 scale_hint = 7;
      Parameters:
      value - The scaleHint to add.
      Returns:
      This builder for chaining.
    • addAllScaleHint

      public TensorDescriptor.Builder addAllScaleHint(Iterable<? extends Long> values)
       Per-dimension integer downsampling factors for virtual/scaled reads.
       Example: [1, 8, 8] means full resolution on first axis, 8x reduced on remaining.
       These do not change tensor identity, only how a specific read request is planned.
       
      repeated int64 scale_hint = 7;
      Parameters:
      values - The scaleHint to add.
      Returns:
      This builder for chaining.
    • clearScaleHint

      public TensorDescriptor.Builder clearScaleHint()
       Per-dimension integer downsampling factors for virtual/scaled reads.
       Example: [1, 8, 8] means full resolution on first axis, 8x reduced on remaining.
       These do not change tensor identity, only how a specific read request is planned.
       
      repeated int64 scale_hint = 7;
      Returns:
      This builder for chaining.
    • getReductionMethod

      public String getReductionMethod()
       Dynamic reduction/downsampling method for scaled reads: "nearest", "area",
       or "precompute" (serve a native on-disk pyramid level).
       Compatibility aliases accepted: "stride" -> "nearest", "mean" -> "area",
       "precomputed" -> "precompute", "linear" (deprecated) -> "area".
       An empty or omitted value is resolved to "nearest" by the server.
       Clients that want averaging must set this field explicitly to "area".
       Note: already-cached chunk IDs that carry no method byte (issued before
       this default was established) are decoded as "area" for compatibility;
       only newly minted IDs default to "nearest".
       
      string reduction_method = 8;
      Specified by:
      getReductionMethod in interface TensorDescriptorOrBuilder
      Returns:
      The reductionMethod.
    • getReductionMethodBytes

      public com.google.protobuf.ByteString getReductionMethodBytes()
       Dynamic reduction/downsampling method for scaled reads: "nearest", "area",
       or "precompute" (serve a native on-disk pyramid level).
       Compatibility aliases accepted: "stride" -> "nearest", "mean" -> "area",
       "precomputed" -> "precompute", "linear" (deprecated) -> "area".
       An empty or omitted value is resolved to "nearest" by the server.
       Clients that want averaging must set this field explicitly to "area".
       Note: already-cached chunk IDs that carry no method byte (issued before
       this default was established) are decoded as "area" for compatibility;
       only newly minted IDs default to "nearest".
       
      string reduction_method = 8;
      Specified by:
      getReductionMethodBytes in interface TensorDescriptorOrBuilder
      Returns:
      The bytes for reductionMethod.
    • setReductionMethod

      public TensorDescriptor.Builder setReductionMethod(String value)
       Dynamic reduction/downsampling method for scaled reads: "nearest", "area",
       or "precompute" (serve a native on-disk pyramid level).
       Compatibility aliases accepted: "stride" -> "nearest", "mean" -> "area",
       "precomputed" -> "precompute", "linear" (deprecated) -> "area".
       An empty or omitted value is resolved to "nearest" by the server.
       Clients that want averaging must set this field explicitly to "area".
       Note: already-cached chunk IDs that carry no method byte (issued before
       this default was established) are decoded as "area" for compatibility;
       only newly minted IDs default to "nearest".
       
      string reduction_method = 8;
      Parameters:
      value - The reductionMethod to set.
      Returns:
      This builder for chaining.
    • clearReductionMethod

      public TensorDescriptor.Builder clearReductionMethod()
       Dynamic reduction/downsampling method for scaled reads: "nearest", "area",
       or "precompute" (serve a native on-disk pyramid level).
       Compatibility aliases accepted: "stride" -> "nearest", "mean" -> "area",
       "precomputed" -> "precompute", "linear" (deprecated) -> "area".
       An empty or omitted value is resolved to "nearest" by the server.
       Clients that want averaging must set this field explicitly to "area".
       Note: already-cached chunk IDs that carry no method byte (issued before
       this default was established) are decoded as "area" for compatibility;
       only newly minted IDs default to "nearest".
       
      string reduction_method = 8;
      Returns:
      This builder for chaining.
    • setReductionMethodBytes

      public TensorDescriptor.Builder setReductionMethodBytes(com.google.protobuf.ByteString value)
       Dynamic reduction/downsampling method for scaled reads: "nearest", "area",
       or "precompute" (serve a native on-disk pyramid level).
       Compatibility aliases accepted: "stride" -> "nearest", "mean" -> "area",
       "precomputed" -> "precompute", "linear" (deprecated) -> "area".
       An empty or omitted value is resolved to "nearest" by the server.
       Clients that want averaging must set this field explicitly to "area".
       Note: already-cached chunk IDs that carry no method byte (issued before
       this default was established) are decoded as "area" for compatibility;
       only newly minted IDs default to "nearest".
       
      string reduction_method = 8;
      Parameters:
      value - The bytes for reductionMethod to set.
      Returns:
      This builder for chaining.
    • getMetadataJson

      public String getMetadataJson()
       Opaque JSON metadata compatible with OME-NGFF (.zattrs schema).
       Contains: multiscales, axes, coordinateTransformations, channels, etc.
       For precomputed pyramids: multiscales[].datasets[].path and scale info.
       Empty string if no metadata available.
       
      string metadata_json = 9;
      Specified by:
      getMetadataJson in interface TensorDescriptorOrBuilder
      Returns:
      The metadataJson.
    • getMetadataJsonBytes

      public com.google.protobuf.ByteString getMetadataJsonBytes()
       Opaque JSON metadata compatible with OME-NGFF (.zattrs schema).
       Contains: multiscales, axes, coordinateTransformations, channels, etc.
       For precomputed pyramids: multiscales[].datasets[].path and scale info.
       Empty string if no metadata available.
       
      string metadata_json = 9;
      Specified by:
      getMetadataJsonBytes in interface TensorDescriptorOrBuilder
      Returns:
      The bytes for metadataJson.
    • setMetadataJson

      public TensorDescriptor.Builder setMetadataJson(String value)
       Opaque JSON metadata compatible with OME-NGFF (.zattrs schema).
       Contains: multiscales, axes, coordinateTransformations, channels, etc.
       For precomputed pyramids: multiscales[].datasets[].path and scale info.
       Empty string if no metadata available.
       
      string metadata_json = 9;
      Parameters:
      value - The metadataJson to set.
      Returns:
      This builder for chaining.
    • clearMetadataJson

      public TensorDescriptor.Builder clearMetadataJson()
       Opaque JSON metadata compatible with OME-NGFF (.zattrs schema).
       Contains: multiscales, axes, coordinateTransformations, channels, etc.
       For precomputed pyramids: multiscales[].datasets[].path and scale info.
       Empty string if no metadata available.
       
      string metadata_json = 9;
      Returns:
      This builder for chaining.
    • setMetadataJsonBytes

      public TensorDescriptor.Builder setMetadataJsonBytes(com.google.protobuf.ByteString value)
       Opaque JSON metadata compatible with OME-NGFF (.zattrs schema).
       Contains: multiscales, axes, coordinateTransformations, channels, etc.
       For precomputed pyramids: multiscales[].datasets[].path and scale info.
       Empty string if no metadata available.
       
      string metadata_json = 9;
      Parameters:
      value - The bytes for metadataJson to set.
      Returns:
      This builder for chaining.
    • getPyramidList

      public List<PyramidLevel> getPyramidList()
       Server-advertised resolution pyramid: the ordered levels the server
       recommends reading this tensor at, coarsest decision made server-side so
       native (precomputed) pyramids are honored and the precache worker and
       client request the same scales. Level 0 is full resolution
       (scale_hint all 1s). A client reads each level via the normal scale_hint
       read path. Populated only by GetFlightInfo (left empty in the catalog,
       like metadata_json); empty also means "old server / decide client-side".
       
      repeated .biopb.tensor.PyramidLevel pyramid = 10;
      Specified by:
      getPyramidList in interface TensorDescriptorOrBuilder
    • getPyramidCount

      public int getPyramidCount()
       Server-advertised resolution pyramid: the ordered levels the server
       recommends reading this tensor at, coarsest decision made server-side so
       native (precomputed) pyramids are honored and the precache worker and
       client request the same scales. Level 0 is full resolution
       (scale_hint all 1s). A client reads each level via the normal scale_hint
       read path. Populated only by GetFlightInfo (left empty in the catalog,
       like metadata_json); empty also means "old server / decide client-side".
       
      repeated .biopb.tensor.PyramidLevel pyramid = 10;
      Specified by:
      getPyramidCount in interface TensorDescriptorOrBuilder
    • getPyramid

      public PyramidLevel getPyramid(int index)
       Server-advertised resolution pyramid: the ordered levels the server
       recommends reading this tensor at, coarsest decision made server-side so
       native (precomputed) pyramids are honored and the precache worker and
       client request the same scales. Level 0 is full resolution
       (scale_hint all 1s). A client reads each level via the normal scale_hint
       read path. Populated only by GetFlightInfo (left empty in the catalog,
       like metadata_json); empty also means "old server / decide client-side".
       
      repeated .biopb.tensor.PyramidLevel pyramid = 10;
      Specified by:
      getPyramid in interface TensorDescriptorOrBuilder
    • setPyramid

      public TensorDescriptor.Builder setPyramid(int index, PyramidLevel value)
       Server-advertised resolution pyramid: the ordered levels the server
       recommends reading this tensor at, coarsest decision made server-side so
       native (precomputed) pyramids are honored and the precache worker and
       client request the same scales. Level 0 is full resolution
       (scale_hint all 1s). A client reads each level via the normal scale_hint
       read path. Populated only by GetFlightInfo (left empty in the catalog,
       like metadata_json); empty also means "old server / decide client-side".
       
      repeated .biopb.tensor.PyramidLevel pyramid = 10;
    • setPyramid

      public TensorDescriptor.Builder setPyramid(int index, PyramidLevel.Builder builderForValue)
       Server-advertised resolution pyramid: the ordered levels the server
       recommends reading this tensor at, coarsest decision made server-side so
       native (precomputed) pyramids are honored and the precache worker and
       client request the same scales. Level 0 is full resolution
       (scale_hint all 1s). A client reads each level via the normal scale_hint
       read path. Populated only by GetFlightInfo (left empty in the catalog,
       like metadata_json); empty also means "old server / decide client-side".
       
      repeated .biopb.tensor.PyramidLevel pyramid = 10;
    • addPyramid

      public TensorDescriptor.Builder addPyramid(PyramidLevel value)
       Server-advertised resolution pyramid: the ordered levels the server
       recommends reading this tensor at, coarsest decision made server-side so
       native (precomputed) pyramids are honored and the precache worker and
       client request the same scales. Level 0 is full resolution
       (scale_hint all 1s). A client reads each level via the normal scale_hint
       read path. Populated only by GetFlightInfo (left empty in the catalog,
       like metadata_json); empty also means "old server / decide client-side".
       
      repeated .biopb.tensor.PyramidLevel pyramid = 10;
    • addPyramid

      public TensorDescriptor.Builder addPyramid(int index, PyramidLevel value)
       Server-advertised resolution pyramid: the ordered levels the server
       recommends reading this tensor at, coarsest decision made server-side so
       native (precomputed) pyramids are honored and the precache worker and
       client request the same scales. Level 0 is full resolution
       (scale_hint all 1s). A client reads each level via the normal scale_hint
       read path. Populated only by GetFlightInfo (left empty in the catalog,
       like metadata_json); empty also means "old server / decide client-side".
       
      repeated .biopb.tensor.PyramidLevel pyramid = 10;
    • addPyramid

      public TensorDescriptor.Builder addPyramid(PyramidLevel.Builder builderForValue)
       Server-advertised resolution pyramid: the ordered levels the server
       recommends reading this tensor at, coarsest decision made server-side so
       native (precomputed) pyramids are honored and the precache worker and
       client request the same scales. Level 0 is full resolution
       (scale_hint all 1s). A client reads each level via the normal scale_hint
       read path. Populated only by GetFlightInfo (left empty in the catalog,
       like metadata_json); empty also means "old server / decide client-side".
       
      repeated .biopb.tensor.PyramidLevel pyramid = 10;
    • addPyramid

      public TensorDescriptor.Builder addPyramid(int index, PyramidLevel.Builder builderForValue)
       Server-advertised resolution pyramid: the ordered levels the server
       recommends reading this tensor at, coarsest decision made server-side so
       native (precomputed) pyramids are honored and the precache worker and
       client request the same scales. Level 0 is full resolution
       (scale_hint all 1s). A client reads each level via the normal scale_hint
       read path. Populated only by GetFlightInfo (left empty in the catalog,
       like metadata_json); empty also means "old server / decide client-side".
       
      repeated .biopb.tensor.PyramidLevel pyramid = 10;
    • addAllPyramid

      public TensorDescriptor.Builder addAllPyramid(Iterable<? extends PyramidLevel> values)
       Server-advertised resolution pyramid: the ordered levels the server
       recommends reading this tensor at, coarsest decision made server-side so
       native (precomputed) pyramids are honored and the precache worker and
       client request the same scales. Level 0 is full resolution
       (scale_hint all 1s). A client reads each level via the normal scale_hint
       read path. Populated only by GetFlightInfo (left empty in the catalog,
       like metadata_json); empty also means "old server / decide client-side".
       
      repeated .biopb.tensor.PyramidLevel pyramid = 10;
    • clearPyramid

      public TensorDescriptor.Builder clearPyramid()
       Server-advertised resolution pyramid: the ordered levels the server
       recommends reading this tensor at, coarsest decision made server-side so
       native (precomputed) pyramids are honored and the precache worker and
       client request the same scales. Level 0 is full resolution
       (scale_hint all 1s). A client reads each level via the normal scale_hint
       read path. Populated only by GetFlightInfo (left empty in the catalog,
       like metadata_json); empty also means "old server / decide client-side".
       
      repeated .biopb.tensor.PyramidLevel pyramid = 10;
    • removePyramid

      public TensorDescriptor.Builder removePyramid(int index)
       Server-advertised resolution pyramid: the ordered levels the server
       recommends reading this tensor at, coarsest decision made server-side so
       native (precomputed) pyramids are honored and the precache worker and
       client request the same scales. Level 0 is full resolution
       (scale_hint all 1s). A client reads each level via the normal scale_hint
       read path. Populated only by GetFlightInfo (left empty in the catalog,
       like metadata_json); empty also means "old server / decide client-side".
       
      repeated .biopb.tensor.PyramidLevel pyramid = 10;
    • getPyramidBuilder

      public PyramidLevel.Builder getPyramidBuilder(int index)
       Server-advertised resolution pyramid: the ordered levels the server
       recommends reading this tensor at, coarsest decision made server-side so
       native (precomputed) pyramids are honored and the precache worker and
       client request the same scales. Level 0 is full resolution
       (scale_hint all 1s). A client reads each level via the normal scale_hint
       read path. Populated only by GetFlightInfo (left empty in the catalog,
       like metadata_json); empty also means "old server / decide client-side".
       
      repeated .biopb.tensor.PyramidLevel pyramid = 10;
    • getPyramidOrBuilder

      public PyramidLevelOrBuilder getPyramidOrBuilder(int index)
       Server-advertised resolution pyramid: the ordered levels the server
       recommends reading this tensor at, coarsest decision made server-side so
       native (precomputed) pyramids are honored and the precache worker and
       client request the same scales. Level 0 is full resolution
       (scale_hint all 1s). A client reads each level via the normal scale_hint
       read path. Populated only by GetFlightInfo (left empty in the catalog,
       like metadata_json); empty also means "old server / decide client-side".
       
      repeated .biopb.tensor.PyramidLevel pyramid = 10;
      Specified by:
      getPyramidOrBuilder in interface TensorDescriptorOrBuilder
    • getPyramidOrBuilderList

      public List<? extends PyramidLevelOrBuilder> getPyramidOrBuilderList()
       Server-advertised resolution pyramid: the ordered levels the server
       recommends reading this tensor at, coarsest decision made server-side so
       native (precomputed) pyramids are honored and the precache worker and
       client request the same scales. Level 0 is full resolution
       (scale_hint all 1s). A client reads each level via the normal scale_hint
       read path. Populated only by GetFlightInfo (left empty in the catalog,
       like metadata_json); empty also means "old server / decide client-side".
       
      repeated .biopb.tensor.PyramidLevel pyramid = 10;
      Specified by:
      getPyramidOrBuilderList in interface TensorDescriptorOrBuilder
    • addPyramidBuilder

      public PyramidLevel.Builder addPyramidBuilder()
       Server-advertised resolution pyramid: the ordered levels the server
       recommends reading this tensor at, coarsest decision made server-side so
       native (precomputed) pyramids are honored and the precache worker and
       client request the same scales. Level 0 is full resolution
       (scale_hint all 1s). A client reads each level via the normal scale_hint
       read path. Populated only by GetFlightInfo (left empty in the catalog,
       like metadata_json); empty also means "old server / decide client-side".
       
      repeated .biopb.tensor.PyramidLevel pyramid = 10;
    • addPyramidBuilder

      public PyramidLevel.Builder addPyramidBuilder(int index)
       Server-advertised resolution pyramid: the ordered levels the server
       recommends reading this tensor at, coarsest decision made server-side so
       native (precomputed) pyramids are honored and the precache worker and
       client request the same scales. Level 0 is full resolution
       (scale_hint all 1s). A client reads each level via the normal scale_hint
       read path. Populated only by GetFlightInfo (left empty in the catalog,
       like metadata_json); empty also means "old server / decide client-side".
       
      repeated .biopb.tensor.PyramidLevel pyramid = 10;
    • getPyramidBuilderList

      public List<PyramidLevel.Builder> getPyramidBuilderList()
       Server-advertised resolution pyramid: the ordered levels the server
       recommends reading this tensor at, coarsest decision made server-side so
       native (precomputed) pyramids are honored and the precache worker and
       client request the same scales. Level 0 is full resolution
       (scale_hint all 1s). A client reads each level via the normal scale_hint
       read path. Populated only by GetFlightInfo (left empty in the catalog,
       like metadata_json); empty also means "old server / decide client-side".
       
      repeated .biopb.tensor.PyramidLevel pyramid = 10;
    • getPhysicalScaleList

      public List<Double> getPhysicalScaleList()
       Per-dimension physical pixel size, aligned 1:1 with dim_labels/shape
       (same length and order). Element i is the physical extent of one sample
       along dimension i, in the unit given by physical_unit[i]. 0.0 means
       "unknown" for that dimension. This is the ~200-byte summary consumers need
       for display scale, so the common case avoids fetching the full OME tree.
       Populated by GetFlightInfo (left empty in the catalog, like pyramid /
       metadata_json); empty also means "old server / no physical scale -> the
       full OME (metadata_json) remains the authoritative source".
       
      repeated double physical_scale = 11;
      Specified by:
      getPhysicalScaleList in interface TensorDescriptorOrBuilder
      Returns:
      A list containing the physicalScale.
    • getPhysicalScaleCount

      public int getPhysicalScaleCount()
       Per-dimension physical pixel size, aligned 1:1 with dim_labels/shape
       (same length and order). Element i is the physical extent of one sample
       along dimension i, in the unit given by physical_unit[i]. 0.0 means
       "unknown" for that dimension. This is the ~200-byte summary consumers need
       for display scale, so the common case avoids fetching the full OME tree.
       Populated by GetFlightInfo (left empty in the catalog, like pyramid /
       metadata_json); empty also means "old server / no physical scale -> the
       full OME (metadata_json) remains the authoritative source".
       
      repeated double physical_scale = 11;
      Specified by:
      getPhysicalScaleCount in interface TensorDescriptorOrBuilder
      Returns:
      The count of physicalScale.
    • getPhysicalScale

      public double getPhysicalScale(int index)
       Per-dimension physical pixel size, aligned 1:1 with dim_labels/shape
       (same length and order). Element i is the physical extent of one sample
       along dimension i, in the unit given by physical_unit[i]. 0.0 means
       "unknown" for that dimension. This is the ~200-byte summary consumers need
       for display scale, so the common case avoids fetching the full OME tree.
       Populated by GetFlightInfo (left empty in the catalog, like pyramid /
       metadata_json); empty also means "old server / no physical scale -> the
       full OME (metadata_json) remains the authoritative source".
       
      repeated double physical_scale = 11;
      Specified by:
      getPhysicalScale in interface TensorDescriptorOrBuilder
      Parameters:
      index - The index of the element to return.
      Returns:
      The physicalScale at the given index.
    • setPhysicalScale

      public TensorDescriptor.Builder setPhysicalScale(int index, double value)
       Per-dimension physical pixel size, aligned 1:1 with dim_labels/shape
       (same length and order). Element i is the physical extent of one sample
       along dimension i, in the unit given by physical_unit[i]. 0.0 means
       "unknown" for that dimension. This is the ~200-byte summary consumers need
       for display scale, so the common case avoids fetching the full OME tree.
       Populated by GetFlightInfo (left empty in the catalog, like pyramid /
       metadata_json); empty also means "old server / no physical scale -> the
       full OME (metadata_json) remains the authoritative source".
       
      repeated double physical_scale = 11;
      Parameters:
      index - The index to set the value at.
      value - The physicalScale to set.
      Returns:
      This builder for chaining.
    • addPhysicalScale

      public TensorDescriptor.Builder addPhysicalScale(double value)
       Per-dimension physical pixel size, aligned 1:1 with dim_labels/shape
       (same length and order). Element i is the physical extent of one sample
       along dimension i, in the unit given by physical_unit[i]. 0.0 means
       "unknown" for that dimension. This is the ~200-byte summary consumers need
       for display scale, so the common case avoids fetching the full OME tree.
       Populated by GetFlightInfo (left empty in the catalog, like pyramid /
       metadata_json); empty also means "old server / no physical scale -> the
       full OME (metadata_json) remains the authoritative source".
       
      repeated double physical_scale = 11;
      Parameters:
      value - The physicalScale to add.
      Returns:
      This builder for chaining.
    • addAllPhysicalScale

      public TensorDescriptor.Builder addAllPhysicalScale(Iterable<? extends Double> values)
       Per-dimension physical pixel size, aligned 1:1 with dim_labels/shape
       (same length and order). Element i is the physical extent of one sample
       along dimension i, in the unit given by physical_unit[i]. 0.0 means
       "unknown" for that dimension. This is the ~200-byte summary consumers need
       for display scale, so the common case avoids fetching the full OME tree.
       Populated by GetFlightInfo (left empty in the catalog, like pyramid /
       metadata_json); empty also means "old server / no physical scale -> the
       full OME (metadata_json) remains the authoritative source".
       
      repeated double physical_scale = 11;
      Parameters:
      values - The physicalScale to add.
      Returns:
      This builder for chaining.
    • clearPhysicalScale

      public TensorDescriptor.Builder clearPhysicalScale()
       Per-dimension physical pixel size, aligned 1:1 with dim_labels/shape
       (same length and order). Element i is the physical extent of one sample
       along dimension i, in the unit given by physical_unit[i]. 0.0 means
       "unknown" for that dimension. This is the ~200-byte summary consumers need
       for display scale, so the common case avoids fetching the full OME tree.
       Populated by GetFlightInfo (left empty in the catalog, like pyramid /
       metadata_json); empty also means "old server / no physical scale -> the
       full OME (metadata_json) remains the authoritative source".
       
      repeated double physical_scale = 11;
      Returns:
      This builder for chaining.
    • getPhysicalUnitList

      public com.google.protobuf.ProtocolStringList getPhysicalUnitList()
       Per-dimension unit string for physical_scale (e.g. "micrometer", "µm"),
       aligned 1:1 with physical_scale. "" means unknown.
       
      repeated string physical_unit = 12;
      Specified by:
      getPhysicalUnitList in interface TensorDescriptorOrBuilder
      Returns:
      A list containing the physicalUnit.
    • getPhysicalUnitCount

      public int getPhysicalUnitCount()
       Per-dimension unit string for physical_scale (e.g. "micrometer", "µm"),
       aligned 1:1 with physical_scale. "" means unknown.
       
      repeated string physical_unit = 12;
      Specified by:
      getPhysicalUnitCount in interface TensorDescriptorOrBuilder
      Returns:
      The count of physicalUnit.
    • getPhysicalUnit

      public String getPhysicalUnit(int index)
       Per-dimension unit string for physical_scale (e.g. "micrometer", "µm"),
       aligned 1:1 with physical_scale. "" means unknown.
       
      repeated string physical_unit = 12;
      Specified by:
      getPhysicalUnit in interface TensorDescriptorOrBuilder
      Parameters:
      index - The index of the element to return.
      Returns:
      The physicalUnit at the given index.
    • getPhysicalUnitBytes

      public com.google.protobuf.ByteString getPhysicalUnitBytes(int index)
       Per-dimension unit string for physical_scale (e.g. "micrometer", "µm"),
       aligned 1:1 with physical_scale. "" means unknown.
       
      repeated string physical_unit = 12;
      Specified by:
      getPhysicalUnitBytes in interface TensorDescriptorOrBuilder
      Parameters:
      index - The index of the value to return.
      Returns:
      The bytes of the physicalUnit at the given index.
    • setPhysicalUnit

      public TensorDescriptor.Builder setPhysicalUnit(int index, String value)
       Per-dimension unit string for physical_scale (e.g. "micrometer", "µm"),
       aligned 1:1 with physical_scale. "" means unknown.
       
      repeated string physical_unit = 12;
      Parameters:
      index - The index to set the value at.
      value - The physicalUnit to set.
      Returns:
      This builder for chaining.
    • addPhysicalUnit

      public TensorDescriptor.Builder addPhysicalUnit(String value)
       Per-dimension unit string for physical_scale (e.g. "micrometer", "µm"),
       aligned 1:1 with physical_scale. "" means unknown.
       
      repeated string physical_unit = 12;
      Parameters:
      value - The physicalUnit to add.
      Returns:
      This builder for chaining.
    • addAllPhysicalUnit

      public TensorDescriptor.Builder addAllPhysicalUnit(Iterable<String> values)
       Per-dimension unit string for physical_scale (e.g. "micrometer", "µm"),
       aligned 1:1 with physical_scale. "" means unknown.
       
      repeated string physical_unit = 12;
      Parameters:
      values - The physicalUnit to add.
      Returns:
      This builder for chaining.
    • clearPhysicalUnit

      public TensorDescriptor.Builder clearPhysicalUnit()
       Per-dimension unit string for physical_scale (e.g. "micrometer", "µm"),
       aligned 1:1 with physical_scale. "" means unknown.
       
      repeated string physical_unit = 12;
      Returns:
      This builder for chaining.
    • addPhysicalUnitBytes

      public TensorDescriptor.Builder addPhysicalUnitBytes(com.google.protobuf.ByteString value)
       Per-dimension unit string for physical_scale (e.g. "micrometer", "µm"),
       aligned 1:1 with physical_scale. "" means unknown.
       
      repeated string physical_unit = 12;
      Parameters:
      value - The bytes of the physicalUnit to add.
      Returns:
      This builder for chaining.
    • hasUploadStatus

      public boolean hasUploadStatus()
       How far the upload backing this tensor has got, when one does; unset for
       every ordinary (file-backed) source. Populated only by GetFlightInfo, like
       `pyramid` and `physical_scale`, and left empty in the catalog.
      
       A live read, computed per request and stored nowhere -- which is what
       biopb/biopb#1035 actually requires. It rides the *per-source* surface
       because the caller who needs it holds a per-source credential and asks
       about one object: that is the fast-return poller. A catalog-shaped
       question would belong on a catalog-shaped surface.
       
      .biopb.tensor.UploadStatus upload_status = 15;
      Specified by:
      hasUploadStatus in interface TensorDescriptorOrBuilder
      Returns:
      Whether the uploadStatus field is set.
    • getUploadStatus

      public UploadStatus getUploadStatus()
       How far the upload backing this tensor has got, when one does; unset for
       every ordinary (file-backed) source. Populated only by GetFlightInfo, like
       `pyramid` and `physical_scale`, and left empty in the catalog.
      
       A live read, computed per request and stored nowhere -- which is what
       biopb/biopb#1035 actually requires. It rides the *per-source* surface
       because the caller who needs it holds a per-source credential and asks
       about one object: that is the fast-return poller. A catalog-shaped
       question would belong on a catalog-shaped surface.
       
      .biopb.tensor.UploadStatus upload_status = 15;
      Specified by:
      getUploadStatus in interface TensorDescriptorOrBuilder
      Returns:
      The uploadStatus.
    • setUploadStatus

      public TensorDescriptor.Builder setUploadStatus(UploadStatus value)
       How far the upload backing this tensor has got, when one does; unset for
       every ordinary (file-backed) source. Populated only by GetFlightInfo, like
       `pyramid` and `physical_scale`, and left empty in the catalog.
      
       A live read, computed per request and stored nowhere -- which is what
       biopb/biopb#1035 actually requires. It rides the *per-source* surface
       because the caller who needs it holds a per-source credential and asks
       about one object: that is the fast-return poller. A catalog-shaped
       question would belong on a catalog-shaped surface.
       
      .biopb.tensor.UploadStatus upload_status = 15;
    • setUploadStatus

      public TensorDescriptor.Builder setUploadStatus(UploadStatus.Builder builderForValue)
       How far the upload backing this tensor has got, when one does; unset for
       every ordinary (file-backed) source. Populated only by GetFlightInfo, like
       `pyramid` and `physical_scale`, and left empty in the catalog.
      
       A live read, computed per request and stored nowhere -- which is what
       biopb/biopb#1035 actually requires. It rides the *per-source* surface
       because the caller who needs it holds a per-source credential and asks
       about one object: that is the fast-return poller. A catalog-shaped
       question would belong on a catalog-shaped surface.
       
      .biopb.tensor.UploadStatus upload_status = 15;
    • mergeUploadStatus

      public TensorDescriptor.Builder mergeUploadStatus(UploadStatus value)
       How far the upload backing this tensor has got, when one does; unset for
       every ordinary (file-backed) source. Populated only by GetFlightInfo, like
       `pyramid` and `physical_scale`, and left empty in the catalog.
      
       A live read, computed per request and stored nowhere -- which is what
       biopb/biopb#1035 actually requires. It rides the *per-source* surface
       because the caller who needs it holds a per-source credential and asks
       about one object: that is the fast-return poller. A catalog-shaped
       question would belong on a catalog-shaped surface.
       
      .biopb.tensor.UploadStatus upload_status = 15;
    • clearUploadStatus

      public TensorDescriptor.Builder clearUploadStatus()
       How far the upload backing this tensor has got, when one does; unset for
       every ordinary (file-backed) source. Populated only by GetFlightInfo, like
       `pyramid` and `physical_scale`, and left empty in the catalog.
      
       A live read, computed per request and stored nowhere -- which is what
       biopb/biopb#1035 actually requires. It rides the *per-source* surface
       because the caller who needs it holds a per-source credential and asks
       about one object: that is the fast-return poller. A catalog-shaped
       question would belong on a catalog-shaped surface.
       
      .biopb.tensor.UploadStatus upload_status = 15;
    • getUploadStatusBuilder

      public UploadStatus.Builder getUploadStatusBuilder()
       How far the upload backing this tensor has got, when one does; unset for
       every ordinary (file-backed) source. Populated only by GetFlightInfo, like
       `pyramid` and `physical_scale`, and left empty in the catalog.
      
       A live read, computed per request and stored nowhere -- which is what
       biopb/biopb#1035 actually requires. It rides the *per-source* surface
       because the caller who needs it holds a per-source credential and asks
       about one object: that is the fast-return poller. A catalog-shaped
       question would belong on a catalog-shaped surface.
       
      .biopb.tensor.UploadStatus upload_status = 15;
    • getUploadStatusOrBuilder

      public UploadStatusOrBuilder getUploadStatusOrBuilder()
       How far the upload backing this tensor has got, when one does; unset for
       every ordinary (file-backed) source. Populated only by GetFlightInfo, like
       `pyramid` and `physical_scale`, and left empty in the catalog.
      
       A live read, computed per request and stored nowhere -- which is what
       biopb/biopb#1035 actually requires. It rides the *per-source* surface
       because the caller who needs it holds a per-source credential and asks
       about one object: that is the fast-return poller. A catalog-shaped
       question would belong on a catalog-shaped surface.
       
      .biopb.tensor.UploadStatus upload_status = 15;
      Specified by:
      getUploadStatusOrBuilder in interface TensorDescriptorOrBuilder
    • hasIsResident

      public boolean hasIsResident()
       Whether this source's bytes are local and cheap to read *right now*.
      
       Filled only when the read mask asks for "is_resident", because the answer
       is a bounded stat walk of the source -- never free, so never default. Unset
       means nobody asked, which a UI draws as no indicator rather than as
       "remote".
      
       Volatile: a synced folder re-dehydrates under storage pressure with nothing
       to notify anyone, so there is no moment at which a stored answer stays true.
       Computed per request, stored nowhere, and not to be cached by a client
       (biopb/biopb#1035). It was briefly a catalog-wide action; that made a live
       filesystem walk the cost of listing, which is why it is here and per-source
       now.
       
      optional bool is_resident = 16;
      Specified by:
      hasIsResident in interface TensorDescriptorOrBuilder
      Returns:
      Whether the isResident field is set.
    • getIsResident

      public boolean getIsResident()
       Whether this source's bytes are local and cheap to read *right now*.
      
       Filled only when the read mask asks for "is_resident", because the answer
       is a bounded stat walk of the source -- never free, so never default. Unset
       means nobody asked, which a UI draws as no indicator rather than as
       "remote".
      
       Volatile: a synced folder re-dehydrates under storage pressure with nothing
       to notify anyone, so there is no moment at which a stored answer stays true.
       Computed per request, stored nowhere, and not to be cached by a client
       (biopb/biopb#1035). It was briefly a catalog-wide action; that made a live
       filesystem walk the cost of listing, which is why it is here and per-source
       now.
       
      optional bool is_resident = 16;
      Specified by:
      getIsResident in interface TensorDescriptorOrBuilder
      Returns:
      The isResident.
    • setIsResident

      public TensorDescriptor.Builder setIsResident(boolean value)
       Whether this source's bytes are local and cheap to read *right now*.
      
       Filled only when the read mask asks for "is_resident", because the answer
       is a bounded stat walk of the source -- never free, so never default. Unset
       means nobody asked, which a UI draws as no indicator rather than as
       "remote".
      
       Volatile: a synced folder re-dehydrates under storage pressure with nothing
       to notify anyone, so there is no moment at which a stored answer stays true.
       Computed per request, stored nowhere, and not to be cached by a client
       (biopb/biopb#1035). It was briefly a catalog-wide action; that made a live
       filesystem walk the cost of listing, which is why it is here and per-source
       now.
       
      optional bool is_resident = 16;
      Parameters:
      value - The isResident to set.
      Returns:
      This builder for chaining.
    • clearIsResident

      public TensorDescriptor.Builder clearIsResident()
       Whether this source's bytes are local and cheap to read *right now*.
      
       Filled only when the read mask asks for "is_resident", because the answer
       is a bounded stat walk of the source -- never free, so never default. Unset
       means nobody asked, which a UI draws as no indicator rather than as
       "remote".
      
       Volatile: a synced folder re-dehydrates under storage pressure with nothing
       to notify anyone, so there is no moment at which a stored answer stays true.
       Computed per request, stored nowhere, and not to be cached by a client
       (biopb/biopb#1035). It was briefly a catalog-wide action; that made a live
       filesystem walk the cost of listing, which is why it is here and per-source
       now.
       
      optional bool is_resident = 16;
      Returns:
      This builder for chaining.
    • hasTtlSeconds

      public boolean hasTtlSeconds()
       How long the server keeps this tensor, in seconds from `add_tensor`.
      
       **A request on the way in, a statement on the way out.** The server
       applies its own policy over what was asked for and answers with the
       lifetime it granted, which may be shorter: a source that caps lifetimes
       clamps an unset request to the cap too.
      
       Unset on the way in asks for the source's default; unset on the way out
       means the tensor is kept until someone discards it. Zero is not a lifetime
       and is refused rather than read as "expire immediately".
      
       The deadline is absolute and recorded with the store, so it survives a
       restart, and it runs from `add_tensor` rather than from READY -- a
       producer that never publishes cannot keep bytes alive by not finishing.
       Past it the reclaim sweep discards the tensor as if its producer had.
       
      optional uint32 ttl_seconds = 17;
      Specified by:
      hasTtlSeconds in interface TensorDescriptorOrBuilder
      Returns:
      Whether the ttlSeconds field is set.
    • getTtlSeconds

      public int getTtlSeconds()
       How long the server keeps this tensor, in seconds from `add_tensor`.
      
       **A request on the way in, a statement on the way out.** The server
       applies its own policy over what was asked for and answers with the
       lifetime it granted, which may be shorter: a source that caps lifetimes
       clamps an unset request to the cap too.
      
       Unset on the way in asks for the source's default; unset on the way out
       means the tensor is kept until someone discards it. Zero is not a lifetime
       and is refused rather than read as "expire immediately".
      
       The deadline is absolute and recorded with the store, so it survives a
       restart, and it runs from `add_tensor` rather than from READY -- a
       producer that never publishes cannot keep bytes alive by not finishing.
       Past it the reclaim sweep discards the tensor as if its producer had.
       
      optional uint32 ttl_seconds = 17;
      Specified by:
      getTtlSeconds in interface TensorDescriptorOrBuilder
      Returns:
      The ttlSeconds.
    • setTtlSeconds

      public TensorDescriptor.Builder setTtlSeconds(int value)
       How long the server keeps this tensor, in seconds from `add_tensor`.
      
       **A request on the way in, a statement on the way out.** The server
       applies its own policy over what was asked for and answers with the
       lifetime it granted, which may be shorter: a source that caps lifetimes
       clamps an unset request to the cap too.
      
       Unset on the way in asks for the source's default; unset on the way out
       means the tensor is kept until someone discards it. Zero is not a lifetime
       and is refused rather than read as "expire immediately".
      
       The deadline is absolute and recorded with the store, so it survives a
       restart, and it runs from `add_tensor` rather than from READY -- a
       producer that never publishes cannot keep bytes alive by not finishing.
       Past it the reclaim sweep discards the tensor as if its producer had.
       
      optional uint32 ttl_seconds = 17;
      Parameters:
      value - The ttlSeconds to set.
      Returns:
      This builder for chaining.
    • clearTtlSeconds

      public TensorDescriptor.Builder clearTtlSeconds()
       How long the server keeps this tensor, in seconds from `add_tensor`.
      
       **A request on the way in, a statement on the way out.** The server
       applies its own policy over what was asked for and answers with the
       lifetime it granted, which may be shorter: a source that caps lifetimes
       clamps an unset request to the cap too.
      
       Unset on the way in asks for the source's default; unset on the way out
       means the tensor is kept until someone discards it. Zero is not a lifetime
       and is refused rather than read as "expire immediately".
      
       The deadline is absolute and recorded with the store, so it survives a
       restart, and it runs from `add_tensor` rather than from READY -- a
       producer that never publishes cannot keep bytes alive by not finishing.
       Past it the reclaim sweep discards the tensor as if its producer had.
       
      optional uint32 ttl_seconds = 17;
      Returns:
      This builder for chaining.
    • hasContentVersion

      public boolean hasContentVersion()
       Opaque per-source generation token, sampled once at (re-)registration
       (biopb/biopb#178): the stat signature `mtime_ns:size` for a file/dir
       source, `iat:<ts>` for a caching proxy's mirror. Two descriptors carrying
       DIFFERENT tokens for one source describe different content; two carrying
       the SAME token describe the same content. It is not ordered -- newer is not
       "greater" -- and it is not a hash of the bytes, so an in-place edit that
       preserves mtime and size is invisible to it.
      
       A SERVING field, like chunk_shape and pyramid: filled by GetFlightInfo from
       the bound TENSOR adapter, left empty on the structural
       DataSourceDescriptor.tensors entries. Consumers need it on the freshest
       thing in the request, and GetFlightInfo is fetch-per-call by contract while
       a catalog listing is a natural thing to cache (biopb/biopb#834). Usually a
       source-level property repeated on the tensor, but not always: a tensor whose
       bytes are not the source's carries its own (an uploaded label set).
      
       Absent means "no claim", not "unchanged": a source whose URL cannot be
       stat'd (cloud, unresolved) leaves it unset, and consumers must degrade to
       whatever freshness policy they used before rather than treating absence as
       a stable version. Servers predating this field also leave it unset.
      
       Read it as a version suffix on the tensor's identity: an identifier built
       from it changes when the data changes. The HTTP sidecar does exactly that,
       splicing the token into the array_id it publishes so a browser cache keyed
       on a tile URL cannot outlive the content (biopb/biopb#780). A chunk cache
       needs nothing from this field -- the server folds the same value into
       chunk_id, where it invalidates for free.
      
       A claim about the DATA: it moves only when the data does. How the server
       forms an opaque chunk key, which must also change when chunking or
       normalization changes, is internal to the server and not visible here.
       
      optional bytes content_version = 14;
      Specified by:
      hasContentVersion in interface TensorDescriptorOrBuilder
      Returns:
      Whether the contentVersion field is set.
    • getContentVersion

      public com.google.protobuf.ByteString getContentVersion()
       Opaque per-source generation token, sampled once at (re-)registration
       (biopb/biopb#178): the stat signature `mtime_ns:size` for a file/dir
       source, `iat:<ts>` for a caching proxy's mirror. Two descriptors carrying
       DIFFERENT tokens for one source describe different content; two carrying
       the SAME token describe the same content. It is not ordered -- newer is not
       "greater" -- and it is not a hash of the bytes, so an in-place edit that
       preserves mtime and size is invisible to it.
      
       A SERVING field, like chunk_shape and pyramid: filled by GetFlightInfo from
       the bound TENSOR adapter, left empty on the structural
       DataSourceDescriptor.tensors entries. Consumers need it on the freshest
       thing in the request, and GetFlightInfo is fetch-per-call by contract while
       a catalog listing is a natural thing to cache (biopb/biopb#834). Usually a
       source-level property repeated on the tensor, but not always: a tensor whose
       bytes are not the source's carries its own (an uploaded label set).
      
       Absent means "no claim", not "unchanged": a source whose URL cannot be
       stat'd (cloud, unresolved) leaves it unset, and consumers must degrade to
       whatever freshness policy they used before rather than treating absence as
       a stable version. Servers predating this field also leave it unset.
      
       Read it as a version suffix on the tensor's identity: an identifier built
       from it changes when the data changes. The HTTP sidecar does exactly that,
       splicing the token into the array_id it publishes so a browser cache keyed
       on a tile URL cannot outlive the content (biopb/biopb#780). A chunk cache
       needs nothing from this field -- the server folds the same value into
       chunk_id, where it invalidates for free.
      
       A claim about the DATA: it moves only when the data does. How the server
       forms an opaque chunk key, which must also change when chunking or
       normalization changes, is internal to the server and not visible here.
       
      optional bytes content_version = 14;
      Specified by:
      getContentVersion in interface TensorDescriptorOrBuilder
      Returns:
      The contentVersion.
    • setContentVersion

      public TensorDescriptor.Builder setContentVersion(com.google.protobuf.ByteString value)
       Opaque per-source generation token, sampled once at (re-)registration
       (biopb/biopb#178): the stat signature `mtime_ns:size` for a file/dir
       source, `iat:<ts>` for a caching proxy's mirror. Two descriptors carrying
       DIFFERENT tokens for one source describe different content; two carrying
       the SAME token describe the same content. It is not ordered -- newer is not
       "greater" -- and it is not a hash of the bytes, so an in-place edit that
       preserves mtime and size is invisible to it.
      
       A SERVING field, like chunk_shape and pyramid: filled by GetFlightInfo from
       the bound TENSOR adapter, left empty on the structural
       DataSourceDescriptor.tensors entries. Consumers need it on the freshest
       thing in the request, and GetFlightInfo is fetch-per-call by contract while
       a catalog listing is a natural thing to cache (biopb/biopb#834). Usually a
       source-level property repeated on the tensor, but not always: a tensor whose
       bytes are not the source's carries its own (an uploaded label set).
      
       Absent means "no claim", not "unchanged": a source whose URL cannot be
       stat'd (cloud, unresolved) leaves it unset, and consumers must degrade to
       whatever freshness policy they used before rather than treating absence as
       a stable version. Servers predating this field also leave it unset.
      
       Read it as a version suffix on the tensor's identity: an identifier built
       from it changes when the data changes. The HTTP sidecar does exactly that,
       splicing the token into the array_id it publishes so a browser cache keyed
       on a tile URL cannot outlive the content (biopb/biopb#780). A chunk cache
       needs nothing from this field -- the server folds the same value into
       chunk_id, where it invalidates for free.
      
       A claim about the DATA: it moves only when the data does. How the server
       forms an opaque chunk key, which must also change when chunking or
       normalization changes, is internal to the server and not visible here.
       
      optional bytes content_version = 14;
      Parameters:
      value - The contentVersion to set.
      Returns:
      This builder for chaining.
    • clearContentVersion

      public TensorDescriptor.Builder clearContentVersion()
       Opaque per-source generation token, sampled once at (re-)registration
       (biopb/biopb#178): the stat signature `mtime_ns:size` for a file/dir
       source, `iat:<ts>` for a caching proxy's mirror. Two descriptors carrying
       DIFFERENT tokens for one source describe different content; two carrying
       the SAME token describe the same content. It is not ordered -- newer is not
       "greater" -- and it is not a hash of the bytes, so an in-place edit that
       preserves mtime and size is invisible to it.
      
       A SERVING field, like chunk_shape and pyramid: filled by GetFlightInfo from
       the bound TENSOR adapter, left empty on the structural
       DataSourceDescriptor.tensors entries. Consumers need it on the freshest
       thing in the request, and GetFlightInfo is fetch-per-call by contract while
       a catalog listing is a natural thing to cache (biopb/biopb#834). Usually a
       source-level property repeated on the tensor, but not always: a tensor whose
       bytes are not the source's carries its own (an uploaded label set).
      
       Absent means "no claim", not "unchanged": a source whose URL cannot be
       stat'd (cloud, unresolved) leaves it unset, and consumers must degrade to
       whatever freshness policy they used before rather than treating absence as
       a stable version. Servers predating this field also leave it unset.
      
       Read it as a version suffix on the tensor's identity: an identifier built
       from it changes when the data changes. The HTTP sidecar does exactly that,
       splicing the token into the array_id it publishes so a browser cache keyed
       on a tile URL cannot outlive the content (biopb/biopb#780). A chunk cache
       needs nothing from this field -- the server folds the same value into
       chunk_id, where it invalidates for free.
      
       A claim about the DATA: it moves only when the data does. How the server
       forms an opaque chunk key, which must also change when chunking or
       normalization changes, is internal to the server and not visible here.
       
      optional bytes content_version = 14;
      Returns:
      This builder for chaining.
    • setUnknownFields

      public final TensorDescriptor.Builder setUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
      Specified by:
      setUnknownFields in interface com.google.protobuf.Message.Builder
      Overrides:
      setUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<TensorDescriptor.Builder>
    • mergeUnknownFields

      public final TensorDescriptor.Builder mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields)
      Specified by:
      mergeUnknownFields in interface com.google.protobuf.Message.Builder
      Overrides:
      mergeUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<TensorDescriptor.Builder>