Буфер для хранения данных тензора строк.
Значения хранятся в виде массива TF_TString
, внутри которого находится tensorflow::tstring
, который по сути является переносимой версией std::string
.
Данные буфера должны быть инициализированы только один раз, путем вызова ERROR(/#init(NdArray, Function))
, и в буфере должно быть выделено достаточно места (используйте ERROR(/#computeSize(NdArray, Function))
до точно знать, сколько байтов требуется для хранения данных).
После инициализации данных буфер доступен только для чтения, поскольку невозможно безопасно изменить значение без повторной инициализации всех данных.
Публичные методы
статический <T> длинный | ComputeSize ( ByteSequenceProvider <?> byteSequenceProvider) Вычисляет, сколько байтов требуется для хранения данных в строковом буфере. |
Буфер данных <байт[]> | copyTo ( DataBuffer <byte[]> dst, длинный размер) Запишите ссылки на объекты исходного массива в этот буфер. |
байт[] | getObject (длинный индекс) |
<Т> пустота | |
логическое значение | isReadOnly () |
Буфер данных <байт[]> | setObject (значения byte[], длинный индекс) |
длинный | размер () |
Буфер данных <байт[]> | срез (длинный индекс, длинный размер) |
Унаследованные методы
Буфер данных <байт[]> | copyTo ( DataBuffer <byte[]> dst, длинный размер) Запишите ссылки на объекты исходного массива в этот буфер. |
логическое значение | равно (Объект obj) |
интервал | хэш-код () |
Буфер данных <байт[]> | чтение (T[] dst, смещение целого числа, длина целого числа) Считайте ссылки на объекты в этом буфере в целевой массив. |
Буфер данных <байт[]> | запись (T[] src, смещение целого числа, длина целого числа) Метод массового размещения с использованием массивов int. |
логическое значение | равно (Объект arg0) |
последний класс<?> | получитьКласс () |
интервал | хэш-код () |
окончательная пустота | поставить в известность () |
окончательная пустота | уведомитьВсе () |
Нить | нанизывать () |
окончательная пустота | подождать (длинный arg0, int arg1) |
окончательная пустота | подождите (длинный arg0) |
окончательная пустота | ждать () |
абстрактный <R> R | |
абстрактный DataBuffer <byte[]> | copyTo ( DataBuffer <byte[]> dst, длинный размер) Запишите ссылки на объекты исходного массива в этот буфер. |
абстрактное логическое значение | равно (Объект obj) Проверяет равенство между буферами данных. |
абстрактный байт[] | getObject (длинный индекс) Считывает значение по заданному индексу. |
абстрактное логическое значение | isReadOnly () Сообщает, поддерживается ли этот буфер доступным массивом. |
абстрактный DataBuffer <byte[]> | узкий (длинный размер) Создает новый буфер, содержимое которого является общей подпоследовательностью содержимого этого буфера, размер которого установлен на заданное значение. |
абстрактный DataBuffer <byte[]> | смещение (длинный индекс) Создает новый буфер, содержимое которого является общей подпоследовательностью содержимого этого буфера, начиная с заданного индекса. |
абстрактный DataBuffer <byte[]> | читать (T[] dst) Считайте ссылки на объекты в этом буфере в целевой массив. |
абстрактный DataBuffer <byte[]> | чтение (T[] dst, смещение целого числа, длина целого числа) Считайте ссылки на объекты в этом буфере в целевой массив. |
абстрактный DataBuffer <byte[]> | setObject (значение byte[], длинный индекс) Записывает заданное значение в этот буфер по заданному индексу. |
абстрактный длинный | размер () Размер буфера в элементах. |
абстрактный DataBuffer <byte[]> | срез (длинный индекс, длинный размер) Создает новый буфер, содержимое которого является общей подпоследовательностью содержимого этого буфера, начиная с заданного индекса и заданного размера. |
абстрактный DataBufferWindow <? расширяет DataBuffer <T>> | окно (длинный размер) Создает DataBufferWindow , который обеспечивает частичное представление этого буфера. |
абстрактный DataBuffer <byte[]> | написать (T[] источник) Запишите ссылки на объекты исходного массива в этот буфер. |
абстрактный DataBuffer <byte[]> | запись (T[] src, смещение целого числа, длина целого числа) Метод массового размещения с использованием массивов int. |
Публичные методы
public static long ComputeSize ( ByteSequenceProvider <?> byteSequenceProvider)
Вычисляет, сколько байтов требуется для хранения данных в строковом буфере.
Параметры
byteSequenceProvider | производит последовательности байтов |
---|
Возврат
- количество байтов, необходимое для хранения данных.
public DataBuffer <byte[]> copyTo ( DataBuffer <byte[]> dst, длинный размер)
Запишите ссылки на объекты исходного массива в этот буфер.
Если значений для копирования больше, чем размер целевого буфера, т. е. size > dst.size()
, значения не передаются и выдается исключение BufferOverflowException. С другой стороны, если копируемых значений больше, чем размер исходного буфера, т. е. > src.size()
, то генерируется исключение BufferUnderfloatException.
В противном случае этот метод копирует значения n = size
из этого буфера в целевой буфер.
Параметры
летнее время | буфер назначения, в который копируются значения; не должно быть этого буфера |
---|---|
размер | количество значений для копирования в целевой буфер |
Возврат
- этот буфер
public byte[] getObject (длинный индекс)
public void init ( ByteSequenceProvider <T> byteSequenceProvider)
Инициализируйте данные этого буфера.
Хотя это не реализуется программно, этот метод обязательно вызывается только один раз после создания буфера. Буфер должен быть выделен в соответствии с тем же набором данных, предварительно вызвав ERROR(/#computeSize(NdArray, Function))
чтобы убедиться, что для его хранения достаточно места.
Параметры
byteSequenceProvider | создает последовательности байтов для использования в качестве тензорных данных |
---|