1# automatically generated by the FlatBuffers compiler, do not modify 2 3# namespace: NamespaceC 4 5import flatbuffers 6from flatbuffers.compat import import_numpy 7np = import_numpy() 8 9class TableInC(object): 10 __slots__ = ['_tab'] 11 12 @classmethod 13 def GetRootAs(cls, buf, offset=0): 14 n = flatbuffers.encode.Get(flatbuffers.packer.uoffset, buf, offset) 15 x = TableInC() 16 x.Init(buf, n + offset) 17 return x 18 19 @classmethod 20 def GetRootAsTableInC(cls, buf, offset=0): 21 """This method is deprecated. Please switch to GetRootAs.""" 22 return cls.GetRootAs(buf, offset) 23 # TableInC 24 def Init(self, buf, pos): 25 self._tab = flatbuffers.table.Table(buf, pos) 26 27 # TableInC 28 def ReferToA1(self): 29 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(4)) 30 if o != 0: 31 x = self._tab.Indirect(o + self._tab.Pos) 32 obj = TableInFirstNS() 33 obj.Init(self._tab.Bytes, x) 34 return obj 35 return None 36 37 # TableInC 38 def ReferToA2(self): 39 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(6)) 40 if o != 0: 41 x = self._tab.Indirect(o + self._tab.Pos) 42 obj = SecondTableInA() 43 obj.Init(self._tab.Bytes, x) 44 return obj 45 return None 46 47def TableInCStart(builder): builder.StartObject(2) 48def Start(builder): 49 return TableInCStart(builder) 50def TableInCAddReferToA1(builder, referToA1): builder.PrependUOffsetTRelativeSlot(0, flatbuffers.number_types.UOffsetTFlags.py_type(referToA1), 0) 51def AddReferToA1(builder, referToA1): 52 return TableInCAddReferToA1(builder, referToA1) 53def TableInCAddReferToA2(builder, referToA2): builder.PrependUOffsetTRelativeSlot(1, flatbuffers.number_types.UOffsetTFlags.py_type(referToA2), 0) 54def AddReferToA2(builder, referToA2): 55 return TableInCAddReferToA2(builder, referToA2) 56def TableInCEnd(builder): return builder.EndObject() 57def End(builder): 58 return TableInCEnd(builder) 59try: 60 from typing import Optional 61except: 62 pass 63 64class TableInCT(object): 65 66 # TableInCT 67 def __init__(self): 68 self.referToA1 = None # type: Optional[TableInFirstNST] 69 self.referToA2 = None # type: Optional[SecondTableInAT] 70 71 @classmethod 72 def InitFromBuf(cls, buf, pos): 73 tableInC = TableInC() 74 tableInC.Init(buf, pos) 75 return cls.InitFromObj(tableInC) 76 77 @classmethod 78 def InitFromObj(cls, tableInC): 79 x = TableInCT() 80 x._UnPack(tableInC) 81 return x 82 83 # TableInCT 84 def _UnPack(self, tableInC): 85 if tableInC is None: 86 return 87 if tableInC.ReferToA1() is not None: 88 self.referToA1 = TableInFirstNST.InitFromObj(tableInC.ReferToA1()) 89 if tableInC.ReferToA2() is not None: 90 self.referToA2 = SecondTableInAT.InitFromObj(tableInC.ReferToA2()) 91 92 # TableInCT 93 def Pack(self, builder): 94 if self.referToA1 is not None: 95 referToA1 = self.referToA1.Pack(builder) 96 if self.referToA2 is not None: 97 referToA2 = self.referToA2.Pack(builder) 98 TableInCStart(builder) 99 if self.referToA1 is not None: 100 TableInCAddReferToA1(builder, referToA1) 101 if self.referToA2 is not None: 102 TableInCAddReferToA2(builder, referToA2) 103 tableInC = TableInCEnd(builder) 104 return tableInC 105