...

Text file src/github.com/google/flatbuffers/tests/MyGame/Example/NestedUnion/Vec3.py

Documentation: github.com/google/flatbuffers/tests/MyGame/Example/NestedUnion

     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

View as plain text