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 GetRootAs(cls, buf, offset=0): 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 GetRootAsStat(cls, buf, offset=0): 21 """This method is deprecated. Please switch to GetRootAs.""" 22 return cls.GetRootAs(buf, offset) 23 @classmethod 24 def StatBufferHasIdentifier(cls, buf, offset, size_prefixed=False): 25 return flatbuffers.util.BufferHasIdentifier(buf, offset, b"\x4D\x4F\x4E\x53", size_prefixed=size_prefixed) 26 27 # Stat 28 def Init(self, buf, pos): 29 self._tab = flatbuffers.table.Table(buf, pos) 30 31 # Stat 32 def Id(self): 33 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(4)) 34 if o != 0: 35 return self._tab.String(o + self._tab.Pos) 36 return None 37 38 # Stat 39 def Val(self): 40 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(6)) 41 if o != 0: 42 return self._tab.Get(flatbuffers.number_types.Int64Flags, o + self._tab.Pos) 43 return 0 44 45 # Stat 46 def Count(self): 47 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(8)) 48 if o != 0: 49 return self._tab.Get(flatbuffers.number_types.Uint16Flags, o + self._tab.Pos) 50 return 0 51 52def StatStart(builder): 53 builder.StartObject(3) 54 55def Start(builder): 56 StatStart(builder) 57 58def StatAddId(builder, id): 59 builder.PrependUOffsetTRelativeSlot(0, flatbuffers.number_types.UOffsetTFlags.py_type(id), 0) 60 61def AddId(builder, id): 62 StatAddId(builder, id) 63 64def StatAddVal(builder, val): 65 builder.PrependInt64Slot(1, val, 0) 66 67def AddVal(builder, val): 68 StatAddVal(builder, val) 69 70def StatAddCount(builder, count): 71 builder.PrependUint16Slot(2, count, 0) 72 73def AddCount(builder, count): 74 StatAddCount(builder, count) 75 76def StatEnd(builder): 77 return builder.EndObject() 78 79def End(builder): 80 return StatEnd(builder) 81 82 83class StatT(object): 84 85 # StatT 86 def __init__(self): 87 self.id = None # type: str 88 self.val = 0 # type: int 89 self.count = 0 # type: int 90 91 @classmethod 92 def InitFromBuf(cls, buf, pos): 93 stat = Stat() 94 stat.Init(buf, pos) 95 return cls.InitFromObj(stat) 96 97 @classmethod 98 def InitFromPackedBuf(cls, buf, pos=0): 99 n = flatbuffers.encode.Get(flatbuffers.packer.uoffset, buf, pos) 100 return cls.InitFromBuf(buf, pos+n) 101 102 @classmethod 103 def InitFromObj(cls, stat): 104 x = StatT() 105 x._UnPack(stat) 106 return x 107 108 # StatT 109 def _UnPack(self, stat): 110 if stat is None: 111 return 112 self.id = stat.Id() 113 self.val = stat.Val() 114 self.count = stat.Count() 115 116 # StatT 117 def Pack(self, builder): 118 if self.id is not None: 119 id = builder.CreateString(self.id) 120 StatStart(builder) 121 if self.id is not None: 122 StatAddId(builder, id) 123 StatAddVal(builder, self.val) 124 StatAddCount(builder, self.count) 125 stat = StatEnd(builder) 126 return stat 127