From 3bb1bc1189bfa14670d2f7839d708f443f5b5942 Mon Sep 17 00:00:00 2001 From: Kevin Cheng Date: Thu, 17 Jun 2021 15:57:08 -0700 Subject: Constant data is embedded in flatbuffer as u8 array instead of saving out as separate numpy files now. Change-Id: I9d757ee3bdc637595732b06c5319d1dc957eaf96 --- python/tosa/TosaTensor.py | 29 +++++++++++++++++++++++++---- 1 file changed, 25 insertions(+), 4 deletions(-) (limited to 'python/tosa/TosaTensor.py') diff --git a/python/tosa/TosaTensor.py b/python/tosa/TosaTensor.py index 760c091..9c0b3cf 100644 --- a/python/tosa/TosaTensor.py +++ b/python/tosa/TosaTensor.py @@ -81,16 +81,37 @@ class TosaTensor(object): return 0 # TosaTensor - def NpyFilename(self): + def Data(self, j): o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(10)) if o != 0: - return self._tab.String(o + self._tab.Pos) - return None + a = self._tab.Vector(o) + return self._tab.Get(flatbuffers.number_types.Uint8Flags, a + flatbuffers.number_types.UOffsetTFlags.py_type(j * 1)) + return 0 + + # TosaTensor + def DataAsNumpy(self): + o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(10)) + if o != 0: + return self._tab.GetVectorAsNumpy(flatbuffers.number_types.Uint8Flags, o) + return 0 + + # TosaTensor + def DataLength(self): + o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(10)) + if o != 0: + return self._tab.VectorLen(o) + return 0 + + # TosaTensor + def DataIsNone(self): + o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(10)) + return o == 0 def TosaTensorStart(builder): builder.StartObject(4) def TosaTensorAddName(builder, name): builder.PrependUOffsetTRelativeSlot(0, flatbuffers.number_types.UOffsetTFlags.py_type(name), 0) def TosaTensorAddShape(builder, shape): builder.PrependUOffsetTRelativeSlot(1, flatbuffers.number_types.UOffsetTFlags.py_type(shape), 0) def TosaTensorStartShapeVector(builder, numElems): return builder.StartVector(4, numElems, 4) def TosaTensorAddType(builder, type): builder.PrependUint32Slot(2, type, 0) -def TosaTensorAddNpyFilename(builder, npyFilename): builder.PrependUOffsetTRelativeSlot(3, flatbuffers.number_types.UOffsetTFlags.py_type(npyFilename), 0) +def TosaTensorAddData(builder, data): builder.PrependUOffsetTRelativeSlot(3, flatbuffers.number_types.UOffsetTFlags.py_type(data), 0) +def TosaTensorStartDataVector(builder, numElems): return builder.StartVector(1, numElems, 1) def TosaTensorEnd(builder): return builder.EndObject() -- cgit v1.2.1