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): 166 builder.StartObject(8) 167 168def Start(builder): 169 SchemaStart(builder) 170 171def SchemaAddObjects(builder, objects): 172 builder.PrependUOffsetTRelativeSlot(0, flatbuffers.number_types.UOffsetTFlags.py_type(objects), 0) 173 174def AddObjects(builder, objects): 175 SchemaAddObjects(builder, objects) 176 177def SchemaStartObjectsVector(builder, numElems): 178 return builder.StartVector(4, numElems, 4) 179 180def StartObjectsVector(builder, numElems): 181 return SchemaStartObjectsVector(builder, numElems) 182 183def SchemaAddEnums(builder, enums): 184 builder.PrependUOffsetTRelativeSlot(1, flatbuffers.number_types.UOffsetTFlags.py_type(enums), 0) 185 186def AddEnums(builder, enums): 187 SchemaAddEnums(builder, enums) 188 189def SchemaStartEnumsVector(builder, numElems): 190 return builder.StartVector(4, numElems, 4) 191 192def StartEnumsVector(builder, numElems): 193 return SchemaStartEnumsVector(builder, numElems) 194 195def SchemaAddFileIdent(builder, fileIdent): 196 builder.PrependUOffsetTRelativeSlot(2, flatbuffers.number_types.UOffsetTFlags.py_type(fileIdent), 0) 197 198def AddFileIdent(builder, fileIdent): 199 SchemaAddFileIdent(builder, fileIdent) 200 201def SchemaAddFileExt(builder, fileExt): 202 builder.PrependUOffsetTRelativeSlot(3, flatbuffers.number_types.UOffsetTFlags.py_type(fileExt), 0) 203 204def AddFileExt(builder, fileExt): 205 SchemaAddFileExt(builder, fileExt) 206 207def SchemaAddRootTable(builder, rootTable): 208 builder.PrependUOffsetTRelativeSlot(4, flatbuffers.number_types.UOffsetTFlags.py_type(rootTable), 0) 209 210def AddRootTable(builder, rootTable): 211 SchemaAddRootTable(builder, rootTable) 212 213def SchemaAddServices(builder, services): 214 builder.PrependUOffsetTRelativeSlot(5, flatbuffers.number_types.UOffsetTFlags.py_type(services), 0) 215 216def AddServices(builder, services): 217 SchemaAddServices(builder, services) 218 219def SchemaStartServicesVector(builder, numElems): 220 return builder.StartVector(4, numElems, 4) 221 222def StartServicesVector(builder, numElems): 223 return SchemaStartServicesVector(builder, numElems) 224 225def SchemaAddAdvancedFeatures(builder, advancedFeatures): 226 builder.PrependUint64Slot(6, advancedFeatures, 0) 227 228def AddAdvancedFeatures(builder, advancedFeatures): 229 SchemaAddAdvancedFeatures(builder, advancedFeatures) 230 231def SchemaAddFbsFiles(builder, fbsFiles): 232 builder.PrependUOffsetTRelativeSlot(7, flatbuffers.number_types.UOffsetTFlags.py_type(fbsFiles), 0) 233 234def AddFbsFiles(builder, fbsFiles): 235 SchemaAddFbsFiles(builder, fbsFiles) 236 237def SchemaStartFbsFilesVector(builder, numElems): 238 return builder.StartVector(4, numElems, 4) 239 240def StartFbsFilesVector(builder, numElems): 241 return SchemaStartFbsFilesVector(builder, numElems) 242 243def SchemaEnd(builder): 244 return builder.EndObject() 245 246def End(builder): 247 return SchemaEnd(builder) 248