• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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