1# automatically generated by the FlatBuffers compiler, do not modify 2 3# namespace: reflection 4 5import flatbuffers 6from flatbuffers.compat import import_numpy 7np = import_numpy() 8 9class Schema(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 = Schema() 16 x.Init(buf, n + offset) 17 return x 18 19 @classmethod 20 def GetRootAsSchema(cls, buf, offset=0): 21 """This method is deprecated. Please switch to GetRootAs.""" 22 return cls.GetRootAs(buf, offset) 23 @classmethod 24 def SchemaBufferHasIdentifier(cls, buf, offset, size_prefixed=False): 25 return flatbuffers.util.BufferHasIdentifier(buf, offset, b"\x42\x46\x42\x53", size_prefixed=size_prefixed) 26 27 # Schema 28 def Init(self, buf, pos): 29 self._tab = flatbuffers.table.Table(buf, pos) 30 31 # Schema 32 def Objects(self, j): 33 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(4)) 34 if o != 0: 35 x = self._tab.Vector(o) 36 x += flatbuffers.number_types.UOffsetTFlags.py_type(j) * 4 37 x = self._tab.Indirect(x) 38 from reflection.Object import Object 39 obj = Object() 40 obj.Init(self._tab.Bytes, x) 41 return obj 42 return None 43 44 # Schema 45 def ObjectsLength(self): 46 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(4)) 47 if o != 0: 48 return self._tab.VectorLen(o) 49 return 0 50 51 # Schema 52 def ObjectsIsNone(self): 53 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(4)) 54 return o == 0 55 56 # Schema 57 def Enums(self, j): 58 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(6)) 59 if o != 0: 60 x = self._tab.Vector(o) 61 x += flatbuffers.number_types.UOffsetTFlags.py_type(j) * 4 62 x = self._tab.Indirect(x) 63 from reflection.Enum import Enum 64 obj = Enum() 65 obj.Init(self._tab.Bytes, x) 66 return obj 67 return None 68 69 # Schema 70 def EnumsLength(self): 71 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(6)) 72 if o != 0: 73 return self._tab.VectorLen(o) 74 return 0 75 76 # Schema 77 def EnumsIsNone(self): 78 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(6)) 79 return o == 0 80 81 # Schema 82 def FileIdent(self): 83 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(8)) 84 if o != 0: 85 return self._tab.String(o + self._tab.Pos) 86 return None 87 88 # Schema 89 def FileExt(self): 90 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(10)) 91 if o != 0: 92 return self._tab.String(o + self._tab.Pos) 93 return None 94 95 # Schema 96 def RootTable(self): 97 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(12)) 98 if o != 0: 99 x = self._tab.Indirect(o + self._tab.Pos) 100 from reflection.Object import Object 101 obj = Object() 102 obj.Init(self._tab.Bytes, x) 103 return obj 104 return None 105 106 # Schema 107 def Services(self, j): 108 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(14)) 109 if o != 0: 110 x = self._tab.Vector(o) 111 x += flatbuffers.number_types.UOffsetTFlags.py_type(j) * 4 112 x = self._tab.Indirect(x) 113 from reflection.Service import Service 114 obj = Service() 115 obj.Init(self._tab.Bytes, x) 116 return obj 117 return None 118 119 # Schema 120 def ServicesLength(self): 121 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(14)) 122 if o != 0: 123 return self._tab.VectorLen(o) 124 return 0 125 126 # Schema 127 def ServicesIsNone(self): 128 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(14)) 129 return o == 0 130 131 # Schema 132 def AdvancedFeatures(self): 133 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(16)) 134 if o != 0: 135 return self._tab.Get(flatbuffers.number_types.Uint64Flags, o + self._tab.Pos) 136 return 0 137 138 # All the files used in this compilation. Files are relative to where 139 # flatc was invoked. 140 # Schema 141 def FbsFiles(self, j): 142 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(18)) 143 if o != 0: 144 x = self._tab.Vector(o) 145 x += flatbuffers.number_types.UOffsetTFlags.py_type(j) * 4 146 x = self._tab.Indirect(x) 147 from reflection.SchemaFile import SchemaFile 148 obj = SchemaFile() 149 obj.Init(self._tab.Bytes, x) 150 return obj 151 return None 152 153 # Schema 154 def FbsFilesLength(self): 155 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(18)) 156 if o != 0: 157 return self._tab.VectorLen(o) 158 return 0 159 160 # Schema 161 def FbsFilesIsNone(self): 162 o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(18)) 163 return o == 0 164 165def SchemaStart(builder): builder.StartObject(8) 166def Start(builder): 167 return SchemaStart(builder) 168def SchemaAddObjects(builder, objects): builder.PrependUOffsetTRelativeSlot(0, flatbuffers.number_types.UOffsetTFlags.py_type(objects), 0) 169def AddObjects(builder, objects): 170 return SchemaAddObjects(builder, objects) 171def SchemaStartObjectsVector(builder, numElems): return builder.StartVector(4, numElems, 4) 172def StartObjectsVector(builder, numElems): 173 return SchemaStartObjectsVector(builder, numElems) 174def SchemaAddEnums(builder, enums): builder.PrependUOffsetTRelativeSlot(1, flatbuffers.number_types.UOffsetTFlags.py_type(enums), 0) 175def AddEnums(builder, enums): 176 return SchemaAddEnums(builder, enums) 177def SchemaStartEnumsVector(builder, numElems): return builder.StartVector(4, numElems, 4) 178def StartEnumsVector(builder, numElems): 179 return SchemaStartEnumsVector(builder, numElems) 180def SchemaAddFileIdent(builder, fileIdent): builder.PrependUOffsetTRelativeSlot(2, flatbuffers.number_types.UOffsetTFlags.py_type(fileIdent), 0) 181def AddFileIdent(builder, fileIdent): 182 return SchemaAddFileIdent(builder, fileIdent) 183def SchemaAddFileExt(builder, fileExt): builder.PrependUOffsetTRelativeSlot(3, flatbuffers.number_types.UOffsetTFlags.py_type(fileExt), 0) 184def AddFileExt(builder, fileExt): 185 return SchemaAddFileExt(builder, fileExt) 186def SchemaAddRootTable(builder, rootTable): builder.PrependUOffsetTRelativeSlot(4, flatbuffers.number_types.UOffsetTFlags.py_type(rootTable), 0) 187def AddRootTable(builder, rootTable): 188 return SchemaAddRootTable(builder, rootTable) 189def SchemaAddServices(builder, services): builder.PrependUOffsetTRelativeSlot(5, flatbuffers.number_types.UOffsetTFlags.py_type(services), 0) 190def AddServices(builder, services): 191 return SchemaAddServices(builder, services) 192def SchemaStartServicesVector(builder, numElems): return builder.StartVector(4, numElems, 4) 193def StartServicesVector(builder, numElems): 194 return SchemaStartServicesVector(builder, numElems) 195def SchemaAddAdvancedFeatures(builder, advancedFeatures): builder.PrependUint64Slot(6, advancedFeatures, 0) 196def AddAdvancedFeatures(builder, advancedFeatures): 197 return SchemaAddAdvancedFeatures(builder, advancedFeatures) 198def SchemaAddFbsFiles(builder, fbsFiles): builder.PrependUOffsetTRelativeSlot(7, flatbuffers.number_types.UOffsetTFlags.py_type(fbsFiles), 0) 199def AddFbsFiles(builder, fbsFiles): 200 return SchemaAddFbsFiles(builder, fbsFiles) 201def SchemaStartFbsFilesVector(builder, numElems): return builder.StartVector(4, numElems, 4) 202def StartFbsFilesVector(builder, numElems): 203 return SchemaStartFbsFilesVector(builder, numElems) 204def SchemaEnd(builder): return builder.EndObject() 205def End(builder): 206 return SchemaEnd(builder)