# automatically generated by the FlatBuffers compiler, do not modify # namespace: NamespaceC import flatbuffers from flatbuffers.compat import import_numpy np = import_numpy() class TableInC(object): __slots__ = ['_tab'] @classmethod def GetRootAs(cls, buf, offset=0): n = flatbuffers.encode.Get(flatbuffers.packer.uoffset, buf, offset) x = TableInC() x.Init(buf, n + offset) return x @classmethod def GetRootAsTableInC(cls, buf, offset=0): """This method is deprecated. Please switch to GetRootAs.""" return cls.GetRootAs(buf, offset) # TableInC def Init(self, buf, pos): self._tab = flatbuffers.table.Table(buf, pos) # TableInC def ReferToA1(self): o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(4)) if o != 0: x = self._tab.Indirect(o + self._tab.Pos) obj = TableInFirstNS() obj.Init(self._tab.Bytes, x) return obj return None # TableInC def ReferToA2(self): o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(6)) if o != 0: x = self._tab.Indirect(o + self._tab.Pos) obj = SecondTableInA() obj.Init(self._tab.Bytes, x) return obj return None def TableInCStart(builder): builder.StartObject(2) def Start(builder): return TableInCStart(builder) def TableInCAddReferToA1(builder, referToA1): builder.PrependUOffsetTRelativeSlot(0, flatbuffers.number_types.UOffsetTFlags.py_type(referToA1), 0) def AddReferToA1(builder, referToA1): return TableInCAddReferToA1(builder, referToA1) def TableInCAddReferToA2(builder, referToA2): builder.PrependUOffsetTRelativeSlot(1, flatbuffers.number_types.UOffsetTFlags.py_type(referToA2), 0) def AddReferToA2(builder, referToA2): return TableInCAddReferToA2(builder, referToA2) def TableInCEnd(builder): return builder.EndObject() def End(builder): return TableInCEnd(builder) try: from typing import Optional except: pass class TableInCT(object): # TableInCT def __init__(self): self.referToA1 = None # type: Optional[TableInFirstNST] self.referToA2 = None # type: Optional[SecondTableInAT] @classmethod def InitFromBuf(cls, buf, pos): tableInC = TableInC() tableInC.Init(buf, pos) return cls.InitFromObj(tableInC) @classmethod def InitFromObj(cls, tableInC): x = TableInCT() x._UnPack(tableInC) return x # TableInCT def _UnPack(self, tableInC): if tableInC is None: return if tableInC.ReferToA1() is not None: self.referToA1 = TableInFirstNST.InitFromObj(tableInC.ReferToA1()) if tableInC.ReferToA2() is not None: self.referToA2 = SecondTableInAT.InitFromObj(tableInC.ReferToA2()) # TableInCT def Pack(self, builder): if self.referToA1 is not None: referToA1 = self.referToA1.Pack(builder) if self.referToA2 is not None: referToA2 = self.referToA2.Pack(builder) TableInCStart(builder) if self.referToA1 is not None: TableInCAddReferToA1(builder, referToA1) if self.referToA2 is not None: TableInCAddReferToA2(builder, referToA2) tableInC = TableInCEnd(builder) return tableInC