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 Summary
Modifier and TypeMethodDescriptionaddAllChunkShape(Iterable<? extends Long> values) Nominal transfer chunk size per dimension (actual may vary for edge chunks).addAllDimLabels(Iterable<String> values) Maps dimension index to semantic label (e.g., ["z", "y", "x"])addAllPhysicalScale(Iterable<? extends Double> values) Per-dimension physical pixel size, aligned 1:1 with dim_labels/shape (same length and order).addAllPhysicalUnit(Iterable<String> values) Per-dimension unit string for physical_scale (e.g.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.addAllScaleHint(Iterable<? extends Long> values) Per-dimension integer downsampling factors for virtual/scaled reads.addAllShape(Iterable<? extends Long> values) Full array shape (per dimension)addChunkShape(long value) Nominal transfer chunk size per dimension (actual may vary for edge chunks).addDimLabels(String value) Maps dimension index to semantic label (e.g., ["z", "y", "x"])addDimLabelsBytes(com.google.protobuf.ByteString value) Maps dimension index to semantic label (e.g., ["z", "y", "x"])addPhysicalScale(double value) Per-dimension physical pixel size, aligned 1:1 with dim_labels/shape (same length and order).addPhysicalUnit(String value) Per-dimension unit string for physical_scale (e.g.addPhysicalUnitBytes(com.google.protobuf.ByteString value) Per-dimension unit string for physical_scale (e.g.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.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.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.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.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.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.addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value) addScaleHint(long value) Per-dimension integer downsampling factors for virtual/scaled reads.addShape(long value) Full array shape (per dimension)build()clear()Globally-unique tensor identifier and primary key (see the tensor identity policy above).Nominal transfer chunk size per dimension (actual may vary for edge chunks).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.Maps dimension index to semantic label (e.g., ["z", "y", "x"])Element dtype (numpy-style, e.g., "uint8", "float32", "float64")clearField(com.google.protobuf.Descriptors.FieldDescriptor field) Whether this source's bytes are local and cheap to read *right now*.Opaque JSON metadata compatible with OME-NGFF (.zattrs schema).clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) Per-dimension physical pixel size, aligned 1:1 with dim_labels/shape (same length and order).Per-dimension unit string for physical_scale (e.g.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.Dynamic reduction/downsampling method for scaled reads: "nearest", "area", or "precompute" (serve a native on-disk pyramid level).Per-dimension integer downsampling factors for virtual/scaled reads.Full array shape (per dimension)Optional slice hint - if provided, GetFlightInfo returns only chunks covering this range.How long the server keeps this tensor, in seconds from `add_tensor`.How far the upload backing this tensor has got, when one does; unset for every ordinary (file-backed) source.clone()Globally-unique tensor identifier and primary key (see the tensor identity policy above).com.google.protobuf.ByteStringGlobally-unique tensor identifier and primary key (see the tensor identity policy above).longgetChunkShape(int index) Nominal transfer chunk size per dimension (actual may vary for edge chunks).intNominal transfer chunk size per dimension (actual may vary for edge chunks).Nominal transfer chunk size per dimension (actual may vary for edge chunks).com.google.protobuf.ByteStringOpaque 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.static final com.google.protobuf.Descriptors.Descriptorcom.google.protobuf.Descriptors.DescriptorgetDimLabels(int index) Maps dimension index to semantic label (e.g., ["z", "y", "x"])com.google.protobuf.ByteStringgetDimLabelsBytes(int index) Maps dimension index to semantic label (e.g., ["z", "y", "x"])intMaps dimension index to semantic label (e.g., ["z", "y", "x"])com.google.protobuf.ProtocolStringListMaps dimension index to semantic label (e.g., ["z", "y", "x"])getDtype()Element dtype (numpy-style, e.g., "uint8", "float32", "float64")com.google.protobuf.ByteStringElement dtype (numpy-style, e.g., "uint8", "float32", "float64")booleanWhether this source's bytes are local and cheap to read *right now*.Opaque JSON metadata compatible with OME-NGFF (.zattrs schema).com.google.protobuf.ByteStringOpaque JSON metadata compatible with OME-NGFF (.zattrs schema).doublegetPhysicalScale(int index) Per-dimension physical pixel size, aligned 1:1 with dim_labels/shape (same length and order).intPer-dimension physical pixel size, aligned 1:1 with dim_labels/shape (same length and order).Per-dimension physical pixel size, aligned 1:1 with dim_labels/shape (same length and order).getPhysicalUnit(int index) Per-dimension unit string for physical_scale (e.g.com.google.protobuf.ByteStringgetPhysicalUnitBytes(int index) Per-dimension unit string for physical_scale (e.g.intPer-dimension unit string for physical_scale (e.g.com.google.protobuf.ProtocolStringListPer-dimension unit string for physical_scale (e.g.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.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.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.intServer-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.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.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.List<? extends PyramidLevelOrBuilder>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.Dynamic reduction/downsampling method for scaled reads: "nearest", "area", or "precompute" (serve a native on-disk pyramid level).com.google.protobuf.ByteStringDynamic reduction/downsampling method for scaled reads: "nearest", "area", or "precompute" (serve a native on-disk pyramid level).longgetScaleHint(int index) Per-dimension integer downsampling factors for virtual/scaled reads.intPer-dimension integer downsampling factors for virtual/scaled reads.Per-dimension integer downsampling factors for virtual/scaled reads.longgetShape(int index) Full array shape (per dimension)intFull array shape (per dimension)Full array shape (per dimension)Optional slice hint - if provided, GetFlightInfo returns only chunks covering this range.Optional slice hint - if provided, GetFlightInfo returns only chunks covering this range.Optional slice hint - if provided, GetFlightInfo returns only chunks covering this range.intHow long the server keeps this tensor, in seconds from `add_tensor`.How far the upload backing this tensor has got, when one does; unset for every ordinary (file-backed) source.How far the upload backing this tensor has got, when one does; unset for every ordinary (file-backed) source.How far the upload backing this tensor has got, when one does; unset for every ordinary (file-backed) source.booleanOpaque 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.booleanWhether this source's bytes are local and cheap to read *right now*.booleanOptional slice hint - if provided, GetFlightInfo returns only chunks covering this range.booleanHow long the server keeps this tensor, in seconds from `add_tensor`.booleanHow far the upload backing this tensor has got, when one does; unset for every ordinary (file-backed) source.protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTablefinal booleanmergeFrom(TensorDescriptor other) mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) mergeFrom(com.google.protobuf.Message other) mergeSliceHint(SliceHint value) Optional slice hint - if provided, GetFlightInfo returns only chunks covering this range.final TensorDescriptor.BuildermergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields) mergeUploadStatus(UploadStatus value) How far the upload backing this tensor has got, when one does; unset for every ordinary (file-backed) source.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.setArrayId(String value) Globally-unique tensor identifier and primary key (see the tensor identity policy above).setArrayIdBytes(com.google.protobuf.ByteString value) Globally-unique tensor identifier and primary key (see the tensor identity policy above).setChunkShape(int index, long value) Nominal transfer chunk size per dimension (actual may vary for edge chunks).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.setDimLabels(int index, String value) Maps dimension index to semantic label (e.g., ["z", "y", "x"])Element dtype (numpy-style, e.g., "uint8", "float32", "float64")setDtypeBytes(com.google.protobuf.ByteString value) Element dtype (numpy-style, e.g., "uint8", "float32", "float64")setIsResident(boolean value) Whether this source's bytes are local and cheap to read *right now*.setMetadataJson(String value) Opaque JSON metadata compatible with OME-NGFF (.zattrs schema).setMetadataJsonBytes(com.google.protobuf.ByteString value) Opaque JSON metadata compatible with OME-NGFF (.zattrs schema).setPhysicalScale(int index, double value) Per-dimension physical pixel size, aligned 1:1 with dim_labels/shape (same length and order).setPhysicalUnit(int index, String value) Per-dimension unit string for physical_scale (e.g.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.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.setReductionMethod(String value) Dynamic reduction/downsampling method for scaled reads: "nearest", "area", or "precompute" (serve a native on-disk pyramid level).setReductionMethodBytes(com.google.protobuf.ByteString value) Dynamic reduction/downsampling method for scaled reads: "nearest", "area", or "precompute" (serve a native on-disk pyramid level).setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value) setScaleHint(int index, long value) Per-dimension integer downsampling factors for virtual/scaled reads.setShape(int index, long value) Full array shape (per dimension)setSliceHint(SliceHint value) Optional slice hint - if provided, GetFlightInfo returns only chunks covering this range.setSliceHint(SliceHint.Builder builderForValue) Optional slice hint - if provided, GetFlightInfo returns only chunks covering this range.setTtlSeconds(int value) How long the server keeps this tensor, in seconds from `add_tensor`.final TensorDescriptor.BuildersetUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields) setUploadStatus(UploadStatus value) How far the upload backing this tensor has got, when one does; unset for every ordinary (file-backed) source.setUploadStatus(UploadStatus.Builder builderForValue) How far the upload backing this tensor has got, when one does; unset for every ordinary (file-backed) source.Methods inherited from class com.google.protobuf.GeneratedMessageV3.Builder
getAllFields, getField, getFieldBuilder, getOneofFieldDescriptor, getParentForChildren, getRepeatedField, getRepeatedFieldBuilder, getRepeatedFieldCount, getUnknownFields, getUnknownFieldSetBuilder, hasField, hasOneof, internalGetMapField, internalGetMapFieldReflection, internalGetMutableMapField, internalGetMutableMapFieldReflection, isClean, markClean, mergeUnknownLengthDelimitedField, mergeUnknownVarintField, newBuilderForField, onBuilt, onChanged, parseUnknownField, setUnknownFieldSetBuilder, setUnknownFieldsProto3Methods inherited from class com.google.protobuf.AbstractMessage.Builder
findInitializationErrors, getInitializationErrorString, internalMergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, newUninitializedMessageException, toStringMethods inherited from class com.google.protobuf.AbstractMessageLite.Builder
addAll, addAll, mergeDelimitedFrom, mergeDelimitedFrom, mergeFrom, newUninitializedMessageExceptionMethods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.google.protobuf.Message.Builder
mergeDelimitedFrom, mergeDelimitedFromMethods inherited from interface com.google.protobuf.MessageLite.Builder
mergeFromMethods inherited from interface com.google.protobuf.MessageOrBuilder
findInitializationErrors, getAllFields, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
-
Method Details
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() -
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()- Specified by:
internalGetFieldAccessorTablein classcom.google.protobuf.GeneratedMessageV3.Builder<TensorDescriptor.Builder>
-
clear
- Specified by:
clearin interfacecom.google.protobuf.Message.Builder- Specified by:
clearin interfacecom.google.protobuf.MessageLite.Builder- Overrides:
clearin classcom.google.protobuf.GeneratedMessageV3.Builder<TensorDescriptor.Builder>
-
getDescriptorForType
public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()- Specified by:
getDescriptorForTypein interfacecom.google.protobuf.Message.Builder- Specified by:
getDescriptorForTypein interfacecom.google.protobuf.MessageOrBuilder- Overrides:
getDescriptorForTypein classcom.google.protobuf.GeneratedMessageV3.Builder<TensorDescriptor.Builder>
-
getDefaultInstanceForType
- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageLiteOrBuilder- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageOrBuilder
-
build
- Specified by:
buildin interfacecom.google.protobuf.Message.Builder- Specified by:
buildin interfacecom.google.protobuf.MessageLite.Builder
-
buildPartial
- Specified by:
buildPartialin interfacecom.google.protobuf.Message.Builder- Specified by:
buildPartialin interfacecom.google.protobuf.MessageLite.Builder
-
clone
- Specified by:
clonein interfacecom.google.protobuf.Message.Builder- Specified by:
clonein interfacecom.google.protobuf.MessageLite.Builder- Overrides:
clonein classcom.google.protobuf.GeneratedMessageV3.Builder<TensorDescriptor.Builder>
-
setField
public TensorDescriptor.Builder setField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value) - Specified by:
setFieldin interfacecom.google.protobuf.Message.Builder- Overrides:
setFieldin classcom.google.protobuf.GeneratedMessageV3.Builder<TensorDescriptor.Builder>
-
clearField
- Specified by:
clearFieldin interfacecom.google.protobuf.Message.Builder- Overrides:
clearFieldin classcom.google.protobuf.GeneratedMessageV3.Builder<TensorDescriptor.Builder>
-
clearOneof
- Specified by:
clearOneofin interfacecom.google.protobuf.Message.Builder- Overrides:
clearOneofin classcom.google.protobuf.GeneratedMessageV3.Builder<TensorDescriptor.Builder>
-
setRepeatedField
public TensorDescriptor.Builder setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, int index, Object value) - Specified by:
setRepeatedFieldin interfacecom.google.protobuf.Message.Builder- Overrides:
setRepeatedFieldin classcom.google.protobuf.GeneratedMessageV3.Builder<TensorDescriptor.Builder>
-
addRepeatedField
public TensorDescriptor.Builder addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor field, Object value) - Specified by:
addRepeatedFieldin interfacecom.google.protobuf.Message.Builder- Overrides:
addRepeatedFieldin classcom.google.protobuf.GeneratedMessageV3.Builder<TensorDescriptor.Builder>
-
mergeFrom
- Specified by:
mergeFromin interfacecom.google.protobuf.Message.Builder- Overrides:
mergeFromin classcom.google.protobuf.AbstractMessage.Builder<TensorDescriptor.Builder>
-
mergeFrom
-
isInitialized
public final boolean isInitialized()- Specified by:
isInitializedin interfacecom.google.protobuf.MessageLiteOrBuilder- Overrides:
isInitializedin classcom.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:
mergeFromin interfacecom.google.protobuf.Message.Builder- Specified by:
mergeFromin interfacecom.google.protobuf.MessageLite.Builder- Overrides:
mergeFromin classcom.google.protobuf.AbstractMessage.Builder<TensorDescriptor.Builder>- Throws:
IOException
-
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:
getArrayIdin interfaceTensorDescriptorOrBuilder- 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:
getArrayIdBytesin interfaceTensorDescriptorOrBuilder- Returns:
- The bytes for arrayId.
-
setArrayId
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
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
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:
getDimLabelsListin interfaceTensorDescriptorOrBuilder- 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:
getDimLabelsCountin interfaceTensorDescriptorOrBuilder- Returns:
- The count of dimLabels.
-
getDimLabels
Maps dimension index to semantic label (e.g., ["z", "y", "x"])
repeated string dim_labels = 2;- Specified by:
getDimLabelsin interfaceTensorDescriptorOrBuilder- 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:
getDimLabelsBytesin interfaceTensorDescriptorOrBuilder- Parameters:
index- The index of the value to return.- Returns:
- The bytes of the dimLabels at the given index.
-
setDimLabels
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
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
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
Maps dimension index to semantic label (e.g., ["z", "y", "x"])
repeated string dim_labels = 2;- Returns:
- This builder for chaining.
-
addDimLabelsBytes
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
Full array shape (per dimension)
repeated int64 shape = 3;- Specified by:
getShapeListin interfaceTensorDescriptorOrBuilder- Returns:
- A list containing the shape.
-
getShapeCount
public int getShapeCount()Full array shape (per dimension)
repeated int64 shape = 3;- Specified by:
getShapeCountin interfaceTensorDescriptorOrBuilder- Returns:
- The count of shape.
-
getShape
public long getShape(int index) Full array shape (per dimension)
repeated int64 shape = 3;- Specified by:
getShapein interfaceTensorDescriptorOrBuilder- Parameters:
index- The index of the element to return.- Returns:
- The shape at the given index.
-
setShape
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
Full array shape (per dimension)
repeated int64 shape = 3;- Parameters:
value- The shape to add.- Returns:
- This builder for chaining.
-
addAllShape
Full array shape (per dimension)
repeated int64 shape = 3;- Parameters:
values- The shape to add.- Returns:
- This builder for chaining.
-
clearShape
Full array shape (per dimension)
repeated int64 shape = 3;- Returns:
- This builder for chaining.
-
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:
getChunkShapeListin interfaceTensorDescriptorOrBuilder- 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:
getChunkShapeCountin interfaceTensorDescriptorOrBuilder- 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:
getChunkShapein interfaceTensorDescriptorOrBuilder- Parameters:
index- The index of the element to return.- Returns:
- The chunkShape at the given index.
-
setChunkShape
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
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
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
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
Element dtype (numpy-style, e.g., "uint8", "float32", "float64")
string dtype = 5;- Specified by:
getDtypein interfaceTensorDescriptorOrBuilder- Returns:
- The dtype.
-
getDtypeBytes
public com.google.protobuf.ByteString getDtypeBytes()Element dtype (numpy-style, e.g., "uint8", "float32", "float64")
string dtype = 5;- Specified by:
getDtypeBytesin interfaceTensorDescriptorOrBuilder- Returns:
- The bytes for dtype.
-
setDtype
Element dtype (numpy-style, e.g., "uint8", "float32", "float64")
string dtype = 5;- Parameters:
value- The dtype to set.- Returns:
- This builder for chaining.
-
clearDtype
Element dtype (numpy-style, e.g., "uint8", "float32", "float64")
string dtype = 5;- Returns:
- This builder for chaining.
-
setDtypeBytes
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:
hasSliceHintin interfaceTensorDescriptorOrBuilder- Returns:
- Whether the sliceHint field is set.
-
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:
getSliceHintin interfaceTensorDescriptorOrBuilder- Returns:
- The sliceHint.
-
setSliceHint
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
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
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
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
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
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:
getSliceHintOrBuilderin interfaceTensorDescriptorOrBuilder
-
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:
getScaleHintListin interfaceTensorDescriptorOrBuilder- 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:
getScaleHintCountin interfaceTensorDescriptorOrBuilder- 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:
getScaleHintin interfaceTensorDescriptorOrBuilder- Parameters:
index- The index of the element to return.- Returns:
- The scaleHint at the given index.
-
setScaleHint
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
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
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
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
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:
getReductionMethodin interfaceTensorDescriptorOrBuilder- 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:
getReductionMethodBytesin interfaceTensorDescriptorOrBuilder- Returns:
- The bytes for reductionMethod.
-
setReductionMethod
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
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
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
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:
getMetadataJsonin interfaceTensorDescriptorOrBuilder- 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:
getMetadataJsonBytesin interfaceTensorDescriptorOrBuilder- Returns:
- The bytes for metadataJson.
-
setMetadataJson
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
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
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
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:
getPyramidListin interfaceTensorDescriptorOrBuilder
-
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:
getPyramidCountin interfaceTensorDescriptorOrBuilder
-
getPyramid
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:
getPyramidin interfaceTensorDescriptorOrBuilder
-
setPyramid
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
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
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
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
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
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
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
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
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
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
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:
getPyramidOrBuilderin interfaceTensorDescriptorOrBuilder
-
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:
getPyramidOrBuilderListin interfaceTensorDescriptorOrBuilder
-
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
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
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
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:
getPhysicalScaleListin interfaceTensorDescriptorOrBuilder- 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:
getPhysicalScaleCountin interfaceTensorDescriptorOrBuilder- 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:
getPhysicalScalein interfaceTensorDescriptorOrBuilder- Parameters:
index- The index of the element to return.- Returns:
- The physicalScale at the given index.
-
setPhysicalScale
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
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
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
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:
getPhysicalUnitListin interfaceTensorDescriptorOrBuilder- 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:
getPhysicalUnitCountin interfaceTensorDescriptorOrBuilder- Returns:
- The count of physicalUnit.
-
getPhysicalUnit
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:
getPhysicalUnitin interfaceTensorDescriptorOrBuilder- 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:
getPhysicalUnitBytesin interfaceTensorDescriptorOrBuilder- Parameters:
index- The index of the value to return.- Returns:
- The bytes of the physicalUnit at the given index.
-
setPhysicalUnit
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
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
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
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
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:
hasUploadStatusin interfaceTensorDescriptorOrBuilder- Returns:
- Whether the uploadStatus field is set.
-
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:
getUploadStatusin interfaceTensorDescriptorOrBuilder- Returns:
- The uploadStatus.
-
setUploadStatus
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
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
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
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
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
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:
getUploadStatusOrBuilderin interfaceTensorDescriptorOrBuilder
-
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:
hasIsResidentin interfaceTensorDescriptorOrBuilder- 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:
getIsResidentin interfaceTensorDescriptorOrBuilder- Returns:
- The isResident.
-
setIsResident
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
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:
hasTtlSecondsin interfaceTensorDescriptorOrBuilder- 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:
getTtlSecondsin interfaceTensorDescriptorOrBuilder- Returns:
- The ttlSeconds.
-
setTtlSeconds
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
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:
hasContentVersionin interfaceTensorDescriptorOrBuilder- 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:
getContentVersionin interfaceTensorDescriptorOrBuilder- Returns:
- The contentVersion.
-
setContentVersion
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
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:
setUnknownFieldsin interfacecom.google.protobuf.Message.Builder- Overrides:
setUnknownFieldsin classcom.google.protobuf.GeneratedMessageV3.Builder<TensorDescriptor.Builder>
-
mergeUnknownFields
public final TensorDescriptor.Builder mergeUnknownFields(com.google.protobuf.UnknownFieldSet unknownFields) - Specified by:
mergeUnknownFieldsin interfacecom.google.protobuf.Message.Builder- Overrides:
mergeUnknownFieldsin classcom.google.protobuf.GeneratedMessageV3.Builder<TensorDescriptor.Builder>
-