1# automatically generated by the FlatBuffers compiler, do not modify 2 3# namespace: Example 4 5import flatbuffers 6from flatbuffers.compat import import_numpy 7np = import_numpy() 8 9class Stat(object): 10 __slots__ = ['_tab'] 11 12 @classmethod 13 def GetRootAsStat(cls, buf, offset): 14 n = flatbuffers.encode.Get(flatbuffers.packer.uoffset, buf, offset) 15 x = Stat() 16 x.Init(buf, n + offset) 17 return x 18 19 @classmethod 20 def StatBufferHasIdentifier(cls, buf, offset, size_prefixed=False): 21 return flatbuffers.util.BufferHasIdentifier(buf, offset, b"\x4D\x4F\x4E\x53", size_prefixed=size_prefixed) 22 23 # Stat 24 def Init(self, buf, pos): 25 self._tab = flatbuffers.table.Table(buf, pos) 26 27 # Stat 28 def Id(self): 29 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(4)) 30 if o != 0: 31 return self._tab.String(o + self._tab.Pos) 32 return None 33 34 # Stat 35 def Val(self): 36 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(6)) 37 if o != 0: 38 return self._tab.Get(flatbuffers.number_types.Int64Flags, o + self._tab.Pos) 39 return 0 40 41 # Stat 42 def Count(self): 43 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(8)) 44 if o != 0: 45 return self._tab.Get(flatbuffers.number_types.Uint16Flags, o + self._tab.Pos) 46 return 0 47 48def StatStart(builder): builder.StartObject(3) 49def StatAddId(builder, id): builder.PrependUOffsetTRelativeSlot(0, flatbuffers.number_types.UOffsetTFlags.py_type(id), 0) 50def StatAddVal(builder, val): builder.PrependInt64Slot(1, val, 0) 51def StatAddCount(builder, count): builder.PrependUint16Slot(2, count, 0) 52def StatEnd(builder): return builder.EndObject() 53 54 55class StatT(object): 56 57 # StatT 58 def __init__(self): 59 self.id = None # type: str 60 self.val = 0 # type: int 61 self.count = 0 # type: int 62 63 @classmethod 64 def InitFromBuf(cls, buf, pos): 65 stat = Stat() 66 stat.Init(buf, pos) 67 return cls.InitFromObj(stat) 68 69 @classmethod 70 def InitFromObj(cls, stat): 71 x = StatT() 72 x._UnPack(stat) 73 return x 74 75 # StatT 76 def _UnPack(self, stat): 77 if stat is None: 78 return 79 self.id = stat.Id() 80 self.val = stat.Val() 81 self.count = stat.Count() 82 83 # StatT 84 def Pack(self, builder): 85 if self.id is not None: 86 id = builder.CreateString(self.id) 87 StatStart(builder) 88 if self.id is not None: 89 StatAddId(builder, id) 90 StatAddVal(builder, self.val) 91 StatAddCount(builder, self.count) 92 stat = StatEnd(builder) 93 return stat 94