| // Licensed to the Apache Software Foundation (ASF) under one | |
| // or more contributor license agreements. See the NOTICE file | |
| // distributed with this work for additional information | |
| // regarding copyright ownership. The ASF licenses this file | |
| // to you under the Apache License, Version 2.0 (the | |
| // "License"); you may not use this file except in compliance | |
| // with the License. You may obtain a copy of the License at | |
| // | |
| // http://www.apache.org/licenses/LICENSE-2.0 | |
| // | |
| // Unless required by applicable law or agreed to in writing, | |
| // software distributed under the License is distributed on an | |
| // "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | |
| // KIND, either express or implied. See the License for the | |
| // specific language governing permissions and limitations | |
| // under the License. | |
| /// EXPERIMENTAL: Metadata for n-dimensional arrays, aka "tensors" or | |
| /// "ndarrays". Arrow implementations in general are not required to implement | |
| /// this type | |
| include "Schema.fbs"; | |
| namespace org.apache.arrow.flatbuf; | |
| /// ---------------------------------------------------------------------- | |
| /// Data structures for dense tensors | |
| /// Shape data for a single axis in a tensor | |
| table TensorDim { | |
| /// Length of dimension | |
| size: long; | |
| /// Name of the dimension, optional | |
| name: string; | |
| } | |
| table Tensor { | |
| /// The type of data contained in a value cell. Currently only fixed-width | |
| /// value types are supported, no strings or nested types | |
| type: Type (required); | |
| /// The dimensions of the tensor, optionally named | |
| shape: [TensorDim] (required); | |
| /// Non-negative byte offsets to advance one value cell along each dimension | |
| /// If omitted, default to row-major order (C-like). | |
| strides: [long]; | |
| /// The location and size of the tensor's data | |
| data: Buffer (required); | |
| } | |
| root_type Tensor; |