1# automatically generated by the FlatBuffers compiler, do not modify 2 3# namespace: NestedUnion 4 5import flatbuffers 6from flatbuffers.compat import import_numpy 7from typing import Any 8from MyGame.Example.NestedUnion.Test import Test 9from typing import Optional 10np = import_numpy() 11 12class Vec3(object): 13 __slots__ = ['_tab'] 14 15 @classmethod 16 def GetRootAs(cls, buf, offset: int = 0): 17 n = flatbuffers.encode.Get(flatbuffers.packer.uoffset, buf, offset) 18 x = Vec3() 19 x.Init(buf, n + offset) 20 return x 21 22 @classmethod 23 def GetRootAsVec3(cls, buf, offset=0): 24 """This method is deprecated. Please switch to GetRootAs.""" 25 return cls.GetRootAs(buf, offset) 26 # Vec3 27 def Init(self, buf: bytes, pos: int): 28 self._tab = flatbuffers.table.Table(buf, pos) 29 30 # Vec3 31 def X(self): 32 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(4)) 33 if o != 0: 34 return self._tab.Get(flatbuffers.number_types.Float64Flags, o + self._tab.Pos) 35 return 0.0 36 37 # Vec3 38 def Y(self): 39 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(6)) 40 if o != 0: 41 return self._tab.Get(flatbuffers.number_types.Float64Flags, o + self._tab.Pos) 42 return 0.0 43 44 # Vec3 45 def Z(self): 46 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(8)) 47 if o != 0: 48 return self._tab.Get(flatbuffers.number_types.Float64Flags, o + self._tab.Pos) 49 return 0.0 50 51 # Vec3 52 def Test1(self): 53 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(10)) 54 if o != 0: 55 return self._tab.Get(flatbuffers.number_types.Float64Flags, o + self._tab.Pos) 56 return 0.0 57 58 # Vec3 59 def Test2(self): 60 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(12)) 61 if o != 0: 62 return self._tab.Get(flatbuffers.number_types.Uint8Flags, o + self._tab.Pos) 63 return 0 64 65 # Vec3 66 def Test3(self) -> Optional[Test]: 67 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(14)) 68 if o != 0: 69 x = o + self._tab.Pos 70 obj = Test() 71 obj.Init(self._tab.Bytes, x) 72 return obj 73 return None 74 75def Vec3Start(builder: flatbuffers.Builder): 76 builder.StartObject(6) 77 78def Start(builder: flatbuffers.Builder): 79 Vec3Start(builder) 80 81def Vec3AddX(builder: flatbuffers.Builder, x: float): 82 builder.PrependFloat64Slot(0, x, 0.0) 83 84def AddX(builder: flatbuffers.Builder, x: float): 85 Vec3AddX(builder, x) 86 87def Vec3AddY(builder: flatbuffers.Builder, y: float): 88 builder.PrependFloat64Slot(1, y, 0.0) 89 90def AddY(builder: flatbuffers.Builder, y: float): 91 Vec3AddY(builder, y) 92 93def Vec3AddZ(builder: flatbuffers.Builder, z: float): 94 builder.PrependFloat64Slot(2, z, 0.0) 95 96def AddZ(builder: flatbuffers.Builder, z: float): 97 Vec3AddZ(builder, z) 98 99def Vec3AddTest1(builder: flatbuffers.Builder, test1: float): 100 builder.PrependFloat64Slot(3, test1, 0.0) 101 102def AddTest1(builder: flatbuffers.Builder, test1: float): 103 Vec3AddTest1(builder, test1) 104 105def Vec3AddTest2(builder: flatbuffers.Builder, test2: int): 106 builder.PrependUint8Slot(4, test2, 0) 107 108def AddTest2(builder: flatbuffers.Builder, test2: int): 109 Vec3AddTest2(builder, test2) 110 111def Vec3AddTest3(builder: flatbuffers.Builder, test3: Any): 112 builder.PrependStructSlot(5, flatbuffers.number_types.UOffsetTFlags.py_type(test3), 0) 113 114def AddTest3(builder: flatbuffers.Builder, test3: Any): 115 Vec3AddTest3(builder, test3) 116 117def Vec3End(builder: flatbuffers.Builder) -> int: 118 return builder.EndObject() 119 120def End(builder: flatbuffers.Builder) -> int: 121 return Vec3End(builder) 122 123import MyGame.Example.NestedUnion.Test 124try: 125 from typing import Optional 126except: 127 pass 128 129class Vec3T(object): 130 131 # Vec3T 132 def __init__(self): 133 self.x = 0.0 # type: float 134 self.y = 0.0 # type: float 135 self.z = 0.0 # type: float 136 self.test1 = 0.0 # type: float 137 self.test2 = 0 # type: int 138 self.test3 = None # type: Optional[MyGame.Example.NestedUnion.Test.TestT] 139 140 @classmethod 141 def InitFromBuf(cls, buf, pos): 142 vec3 = Vec3() 143 vec3.Init(buf, pos) 144 return cls.InitFromObj(vec3) 145 146 @classmethod 147 def InitFromPackedBuf(cls, buf, pos=0): 148 n = flatbuffers.encode.Get(flatbuffers.packer.uoffset, buf, pos) 149 return cls.InitFromBuf(buf, pos+n) 150 151 @classmethod 152 def InitFromObj(cls, vec3): 153 x = Vec3T() 154 x._UnPack(vec3) 155 return x 156 157 # Vec3T 158 def _UnPack(self, vec3): 159 if vec3 is None: 160 return 161 self.x = vec3.X() 162 self.y = vec3.Y() 163 self.z = vec3.Z() 164 self.test1 = vec3.Test1() 165 self.test2 = vec3.Test2() 166 if vec3.Test3() is not None: 167 self.test3 = MyGame.Example.NestedUnion.Test.TestT.InitFromObj(vec3.Test3()) 168 169 # Vec3T 170 def Pack(self, builder): 171 Vec3Start(builder) 172 Vec3AddX(builder, self.x) 173 Vec3AddY(builder, self.y) 174 Vec3AddZ(builder, self.z) 175 Vec3AddTest1(builder, self.test1) 176 Vec3AddTest2(builder, self.test2) 177 if self.test3 is not None: 178 test3 = self.test3.Pack(builder) 179 Vec3AddTest3(builder, test3) 180 vec3 = Vec3End(builder) 181 return vec3 182