10f5f7faa9fcf034d1189653f1b6e32b245a7f8a1schoetbi// <auto-generated> 20f5f7faa9fcf034d1189653f1b6e32b245a7f8a1schoetbi// automatically generated by the FlatBuffers compiler, do not modify 30f5f7faa9fcf034d1189653f1b6e32b245a7f8a1schoetbi// </auto-generated> 4557c88c0396220e79e9a43c07f8393a5c68b739dWouter van Oortmerssen 5557c88c0396220e79e9a43c07f8393a5c68b739dWouter van Oortmerssennamespace MyGame.Example 6557c88c0396220e79e9a43c07f8393a5c68b739dWouter van Oortmerssen{ 7557c88c0396220e79e9a43c07f8393a5c68b739dWouter van Oortmerssen 8ccfa317486199d4fe97cac08bbe37e498651589fSpencer Benchusing global::System; 9ccfa317486199d4fe97cac08bbe37e498651589fSpencer Benchusing global::FlatBuffers; 10557c88c0396220e79e9a43c07f8393a5c68b739dWouter van Oortmerssen 114d7810424c8f964dbcb8dd3179d8c46cd896c4dcWouter van Oortmerssen/// an example documentation comment: monster object 1252ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssenpublic struct Monster : IFlatbufferObject 1352ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen{ 1452ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen private Table __p; 1502dfa64a89f46588c6de34e59a310fab98e73f9dAlberto Fernández public ByteBuffer ByteBuffer { get { return __p.bb; } } 16b0910e75e058f73165526002d4afcec317d7955eFlorian Enner public static Monster GetRootAsMonster(ByteBuffer _bb) { return GetRootAsMonster(_bb, new Monster()); } 1752ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public static Monster GetRootAsMonster(ByteBuffer _bb, Monster obj) { return (obj.__assign(_bb.GetInt(_bb.Position) + _bb.Position, _bb)); } 1852ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public static bool MonsterBufferHasIdentifier(ByteBuffer _bb) { return Table.__has_identifier(_bb, "MONS"); } 1952ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public void __init(int _i, ByteBuffer _bb) { __p.bb_pos = _i; __p.bb = _bb; } 2052ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public Monster __assign(int _i, ByteBuffer _bb) { __init(_i, _bb); return this; } 21557c88c0396220e79e9a43c07f8393a5c68b739dWouter van Oortmerssen 2252ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public Vec3? Pos { get { int o = __p.__offset(4); return o != 0 ? (Vec3?)(new Vec3()).__assign(o + __p.bb_pos, __p.bb) : null; } } 2352ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public short Mana { get { int o = __p.__offset(6); return o != 0 ? __p.bb.GetShort(o + __p.bb_pos) : (short)150; } } 2452ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public bool MutateMana(short mana) { int o = __p.__offset(6); if (o != 0) { __p.bb.PutShort(o + __p.bb_pos, mana); return true; } else { return false; } } 2552ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public short Hp { get { int o = __p.__offset(8); return o != 0 ? __p.bb.GetShort(o + __p.bb_pos) : (short)100; } } 2652ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public bool MutateHp(short hp) { int o = __p.__offset(8); if (o != 0) { __p.bb.PutShort(o + __p.bb_pos, hp); return true; } else { return false; } } 2752ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public string Name { get { int o = __p.__offset(10); return o != 0 ? __p.__string(o + __p.bb_pos) : null; } } 2852ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public ArraySegment<byte>? GetNameBytes() { return __p.__vector_as_arraysegment(10); } 2952ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public byte Inventory(int j) { int o = __p.__offset(14); return o != 0 ? __p.bb.Get(__p.__vector(o) + j * 1) : (byte)0; } 3052ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public int InventoryLength { get { int o = __p.__offset(14); return o != 0 ? __p.__vector_len(o) : 0; } } 3152ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public ArraySegment<byte>? GetInventoryBytes() { return __p.__vector_as_arraysegment(14); } 3252ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public bool MutateInventory(int j, byte inventory) { int o = __p.__offset(14); if (o != 0) { __p.bb.Put(__p.__vector(o) + j * 1, inventory); return true; } else { return false; } } 3352ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public Color Color { get { int o = __p.__offset(16); return o != 0 ? (Color)__p.bb.GetSbyte(o + __p.bb_pos) : Color.Blue; } } 3452ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public bool MutateColor(Color color) { int o = __p.__offset(16); if (o != 0) { __p.bb.PutSbyte(o + __p.bb_pos, (sbyte)color); return true; } else { return false; } } 3552ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public Any TestType { get { int o = __p.__offset(18); return o != 0 ? (Any)__p.bb.Get(o + __p.bb_pos) : Any.NONE; } } 3652ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public bool MutateTestType(Any test_type) { int o = __p.__offset(18); if (o != 0) { __p.bb.Put(o + __p.bb_pos, (byte)test_type); return true; } else { return false; } } 3752ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public TTable? Test<TTable>() where TTable : struct, IFlatbufferObject { int o = __p.__offset(20); return o != 0 ? (TTable?)__p.__union<TTable>(o) : null; } 3852ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public Test? Test4(int j) { int o = __p.__offset(22); return o != 0 ? (Test?)(new Test()).__assign(__p.__vector(o) + j * 4, __p.bb) : null; } 3952ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public int Test4Length { get { int o = __p.__offset(22); return o != 0 ? __p.__vector_len(o) : 0; } } 4052ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public string Testarrayofstring(int j) { int o = __p.__offset(24); return o != 0 ? __p.__string(__p.__vector(o) + j * 4) : null; } 4152ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public int TestarrayofstringLength { get { int o = __p.__offset(24); return o != 0 ? __p.__vector_len(o) : 0; } } 42730c0cadde2302efa1487d672a1e2f53680ce2eaGabriel Martinez /// an example documentation comment: this will end up in the generated code 43730c0cadde2302efa1487d672a1e2f53680ce2eaGabriel Martinez /// multiline too 4452ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public Monster? Testarrayoftables(int j) { int o = __p.__offset(26); return o != 0 ? (Monster?)(new Monster()).__assign(__p.__indirect(__p.__vector(o) + j * 4), __p.bb) : null; } 4552ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public int TestarrayoftablesLength { get { int o = __p.__offset(26); return o != 0 ? __p.__vector_len(o) : 0; } } 468468ea1ab410ffaa1eed99750e4c77b496b72fd5Wouter van Oortmerssen public Monster? TestarrayoftablesByKey(string key) { int o = __p.__offset(26); return o != 0 ? Monster.__lookup_by_key(__p.__vector(o), key, __p.bb) : null; } 4752ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public Monster? Enemy { get { int o = __p.__offset(28); return o != 0 ? (Monster?)(new Monster()).__assign(__p.__indirect(o + __p.bb_pos), __p.bb) : null; } } 4852ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public byte Testnestedflatbuffer(int j) { int o = __p.__offset(30); return o != 0 ? __p.bb.Get(__p.__vector(o) + j * 1) : (byte)0; } 4952ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public int TestnestedflatbufferLength { get { int o = __p.__offset(30); return o != 0 ? __p.__vector_len(o) : 0; } } 5052ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public ArraySegment<byte>? GetTestnestedflatbufferBytes() { return __p.__vector_as_arraysegment(30); } 5152ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public Monster? GetTestnestedflatbufferAsMonster() { int o = __p.__offset(30); return o != 0 ? (Monster?)(new Monster()).__assign(__p.__indirect(__p.__vector(o)), __p.bb) : null; } 5252ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public bool MutateTestnestedflatbuffer(int j, byte testnestedflatbuffer) { int o = __p.__offset(30); if (o != 0) { __p.bb.Put(__p.__vector(o) + j * 1, testnestedflatbuffer); return true; } else { return false; } } 5352ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public Stat? Testempty { get { int o = __p.__offset(32); return o != 0 ? (Stat?)(new Stat()).__assign(__p.__indirect(o + __p.bb_pos), __p.bb) : null; } } 5452ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public bool Testbool { get { int o = __p.__offset(34); return o != 0 ? 0!=__p.bb.Get(o + __p.bb_pos) : (bool)false; } } 5552ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public bool MutateTestbool(bool testbool) { int o = __p.__offset(34); if (o != 0) { __p.bb.Put(o + __p.bb_pos, (byte)(testbool ? 1 : 0)); return true; } else { return false; } } 5652ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public int Testhashs32Fnv1 { get { int o = __p.__offset(36); return o != 0 ? __p.bb.GetInt(o + __p.bb_pos) : (int)0; } } 5752ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public bool MutateTesthashs32Fnv1(int testhashs32_fnv1) { int o = __p.__offset(36); if (o != 0) { __p.bb.PutInt(o + __p.bb_pos, testhashs32_fnv1); return true; } else { return false; } } 5852ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public uint Testhashu32Fnv1 { get { int o = __p.__offset(38); return o != 0 ? __p.bb.GetUint(o + __p.bb_pos) : (uint)0; } } 5952ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public bool MutateTesthashu32Fnv1(uint testhashu32_fnv1) { int o = __p.__offset(38); if (o != 0) { __p.bb.PutUint(o + __p.bb_pos, testhashu32_fnv1); return true; } else { return false; } } 6052ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public long Testhashs64Fnv1 { get { int o = __p.__offset(40); return o != 0 ? __p.bb.GetLong(o + __p.bb_pos) : (long)0; } } 6152ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public bool MutateTesthashs64Fnv1(long testhashs64_fnv1) { int o = __p.__offset(40); if (o != 0) { __p.bb.PutLong(o + __p.bb_pos, testhashs64_fnv1); return true; } else { return false; } } 6252ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public ulong Testhashu64Fnv1 { get { int o = __p.__offset(42); return o != 0 ? __p.bb.GetUlong(o + __p.bb_pos) : (ulong)0; } } 6352ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public bool MutateTesthashu64Fnv1(ulong testhashu64_fnv1) { int o = __p.__offset(42); if (o != 0) { __p.bb.PutUlong(o + __p.bb_pos, testhashu64_fnv1); return true; } else { return false; } } 6452ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public int Testhashs32Fnv1a { get { int o = __p.__offset(44); return o != 0 ? __p.bb.GetInt(o + __p.bb_pos) : (int)0; } } 6552ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public bool MutateTesthashs32Fnv1a(int testhashs32_fnv1a) { int o = __p.__offset(44); if (o != 0) { __p.bb.PutInt(o + __p.bb_pos, testhashs32_fnv1a); return true; } else { return false; } } 6652ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public uint Testhashu32Fnv1a { get { int o = __p.__offset(46); return o != 0 ? __p.bb.GetUint(o + __p.bb_pos) : (uint)0; } } 6752ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public bool MutateTesthashu32Fnv1a(uint testhashu32_fnv1a) { int o = __p.__offset(46); if (o != 0) { __p.bb.PutUint(o + __p.bb_pos, testhashu32_fnv1a); return true; } else { return false; } } 6852ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public long Testhashs64Fnv1a { get { int o = __p.__offset(48); return o != 0 ? __p.bb.GetLong(o + __p.bb_pos) : (long)0; } } 6952ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public bool MutateTesthashs64Fnv1a(long testhashs64_fnv1a) { int o = __p.__offset(48); if (o != 0) { __p.bb.PutLong(o + __p.bb_pos, testhashs64_fnv1a); return true; } else { return false; } } 7052ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public ulong Testhashu64Fnv1a { get { int o = __p.__offset(50); return o != 0 ? __p.bb.GetUlong(o + __p.bb_pos) : (ulong)0; } } 7152ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public bool MutateTesthashu64Fnv1a(ulong testhashu64_fnv1a) { int o = __p.__offset(50); if (o != 0) { __p.bb.PutUlong(o + __p.bb_pos, testhashu64_fnv1a); return true; } else { return false; } } 7252ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public bool Testarrayofbools(int j) { int o = __p.__offset(52); return o != 0 ? 0!=__p.bb.Get(__p.__vector(o) + j * 1) : false; } 7352ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public int TestarrayofboolsLength { get { int o = __p.__offset(52); return o != 0 ? __p.__vector_len(o) : 0; } } 7452ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public ArraySegment<byte>? GetTestarrayofboolsBytes() { return __p.__vector_as_arraysegment(52); } 7552ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public bool MutateTestarrayofbools(int j, bool testarrayofbools) { int o = __p.__offset(52); if (o != 0) { __p.bb.Put(__p.__vector(o) + j * 1, (byte)(testarrayofbools ? 1 : 0)); return true; } else { return false; } } 7652ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public float Testf { get { int o = __p.__offset(54); return o != 0 ? __p.bb.GetFloat(o + __p.bb_pos) : (float)3.14159f; } } 7752ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public bool MutateTestf(float testf) { int o = __p.__offset(54); if (o != 0) { __p.bb.PutFloat(o + __p.bb_pos, testf); return true; } else { return false; } } 7852ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public float Testf2 { get { int o = __p.__offset(56); return o != 0 ? __p.bb.GetFloat(o + __p.bb_pos) : (float)3.0f; } } 7952ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public bool MutateTestf2(float testf2) { int o = __p.__offset(56); if (o != 0) { __p.bb.PutFloat(o + __p.bb_pos, testf2); return true; } else { return false; } } 8052ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public float Testf3 { get { int o = __p.__offset(58); return o != 0 ? __p.bb.GetFloat(o + __p.bb_pos) : (float)0.0f; } } 8152ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public bool MutateTestf3(float testf3) { int o = __p.__offset(58); if (o != 0) { __p.bb.PutFloat(o + __p.bb_pos, testf3); return true; } else { return false; } } 8252ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public string Testarrayofstring2(int j) { int o = __p.__offset(60); return o != 0 ? __p.__string(__p.__vector(o) + j * 4) : null; } 8352ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen public int Testarrayofstring2Length { get { int o = __p.__offset(60); return o != 0 ? __p.__vector_len(o) : 0; } } 84a5cc2092a62e7ee6541cc380b861cf7ac4de8cb0tianyapiaozi public Ability? Testarrayofsortedstruct(int j) { int o = __p.__offset(62); return o != 0 ? (Ability?)(new Ability()).__assign(__p.__vector(o) + j * 8, __p.bb) : null; } 85a5cc2092a62e7ee6541cc380b861cf7ac4de8cb0tianyapiaozi public int TestarrayofsortedstructLength { get { int o = __p.__offset(62); return o != 0 ? __p.__vector_len(o) : 0; } } 86dddd0865cb161a081afbdfa11919622a49f4141aWouter van Oortmerssen public byte Flex(int j) { int o = __p.__offset(64); return o != 0 ? __p.bb.Get(__p.__vector(o) + j * 1) : (byte)0; } 87dddd0865cb161a081afbdfa11919622a49f4141aWouter van Oortmerssen public int FlexLength { get { int o = __p.__offset(64); return o != 0 ? __p.__vector_len(o) : 0; } } 88dddd0865cb161a081afbdfa11919622a49f4141aWouter van Oortmerssen public ArraySegment<byte>? GetFlexBytes() { return __p.__vector_as_arraysegment(64); } 89dddd0865cb161a081afbdfa11919622a49f4141aWouter van Oortmerssen public bool MutateFlex(int j, byte flex) { int o = __p.__offset(64); if (o != 0) { __p.bb.Put(__p.__vector(o) + j * 1, flex); return true; } else { return false; } } 90f064a6cc60b0978509280002f93dcb9d08a543d8Stewart Miles public Test? Test5(int j) { int o = __p.__offset(66); return o != 0 ? (Test?)(new Test()).__assign(__p.__vector(o) + j * 4, __p.bb) : null; } 91f064a6cc60b0978509280002f93dcb9d08a543d8Stewart Miles public int Test5Length { get { int o = __p.__offset(66); return o != 0 ? __p.__vector_len(o) : 0; } } 923282a84e3068d2ff0ded5a683ceea0806da21ed6Kevin Rose public long VectorOfLongs(int j) { int o = __p.__offset(68); return o != 0 ? __p.bb.GetLong(__p.__vector(o) + j * 8) : (long)0; } 933282a84e3068d2ff0ded5a683ceea0806da21ed6Kevin Rose public int VectorOfLongsLength { get { int o = __p.__offset(68); return o != 0 ? __p.__vector_len(o) : 0; } } 943282a84e3068d2ff0ded5a683ceea0806da21ed6Kevin Rose public ArraySegment<byte>? GetVectorOfLongsBytes() { return __p.__vector_as_arraysegment(68); } 953282a84e3068d2ff0ded5a683ceea0806da21ed6Kevin Rose public bool MutateVectorOfLongs(int j, long vector_of_longs) { int o = __p.__offset(68); if (o != 0) { __p.bb.PutLong(__p.__vector(o) + j * 8, vector_of_longs); return true; } else { return false; } } 963282a84e3068d2ff0ded5a683ceea0806da21ed6Kevin Rose public double VectorOfDoubles(int j) { int o = __p.__offset(70); return o != 0 ? __p.bb.GetDouble(__p.__vector(o) + j * 8) : (double)0; } 973282a84e3068d2ff0ded5a683ceea0806da21ed6Kevin Rose public int VectorOfDoublesLength { get { int o = __p.__offset(70); return o != 0 ? __p.__vector_len(o) : 0; } } 983282a84e3068d2ff0ded5a683ceea0806da21ed6Kevin Rose public ArraySegment<byte>? GetVectorOfDoublesBytes() { return __p.__vector_as_arraysegment(70); } 993282a84e3068d2ff0ded5a683ceea0806da21ed6Kevin Rose public bool MutateVectorOfDoubles(int j, double vector_of_doubles) { int o = __p.__offset(70); if (o != 0) { __p.bb.PutDouble(__p.__vector(o) + j * 8, vector_of_doubles); return true; } else { return false; } } 100321a1c9dc0bb2205feb1bb9fd079546403aa852fWouter van Oortmerssen public MyGame.InParentNamespace? ParentNamespaceTest { get { int o = __p.__offset(72); return o != 0 ? (MyGame.InParentNamespace?)(new MyGame.InParentNamespace()).__assign(__p.__indirect(o + __p.bb_pos), __p.bb) : null; } } 101557c88c0396220e79e9a43c07f8393a5c68b739dWouter van Oortmerssen 102321a1c9dc0bb2205feb1bb9fd079546403aa852fWouter van Oortmerssen public static void StartMonster(FlatBufferBuilder builder) { builder.StartObject(35); } 103588564d74f2968808557d96b6f71e5dc7cd62622RevenantX public static void AddPos(FlatBufferBuilder builder, Offset<Vec3> posOffset) { builder.AddStruct(0, posOffset.Value, 0); } 104557c88c0396220e79e9a43c07f8393a5c68b739dWouter van Oortmerssen public static void AddMana(FlatBufferBuilder builder, short mana) { builder.AddShort(1, mana, 150); } 105557c88c0396220e79e9a43c07f8393a5c68b739dWouter van Oortmerssen public static void AddHp(FlatBufferBuilder builder, short hp) { builder.AddShort(2, hp, 100); } 106588564d74f2968808557d96b6f71e5dc7cd62622RevenantX public static void AddName(FlatBufferBuilder builder, StringOffset nameOffset) { builder.AddOffset(3, nameOffset.Value, 0); } 107588564d74f2968808557d96b6f71e5dc7cd62622RevenantX public static void AddInventory(FlatBufferBuilder builder, VectorOffset inventoryOffset) { builder.AddOffset(5, inventoryOffset.Value, 0); } 108588564d74f2968808557d96b6f71e5dc7cd62622RevenantX public static VectorOffset CreateInventoryVector(FlatBufferBuilder builder, byte[] data) { builder.StartVector(1, data.Length, 1); for (int i = data.Length - 1; i >= 0; i--) builder.AddByte(data[i]); return builder.EndVector(); } 109557c88c0396220e79e9a43c07f8393a5c68b739dWouter van Oortmerssen public static void StartInventoryVector(FlatBufferBuilder builder, int numElems) { builder.StartVector(1, numElems, 1); } 110644bcbde9111cd0c17e721b78ae8b59fc35306a4Donnell public static void AddColor(FlatBufferBuilder builder, Color color) { builder.AddSbyte(6, (sbyte)color, 8); } 111644bcbde9111cd0c17e721b78ae8b59fc35306a4Donnell public static void AddTestType(FlatBufferBuilder builder, Any testType) { builder.AddByte(7, (byte)testType, 0); } 112557c88c0396220e79e9a43c07f8393a5c68b739dWouter van Oortmerssen public static void AddTest(FlatBufferBuilder builder, int testOffset) { builder.AddOffset(8, testOffset, 0); } 113588564d74f2968808557d96b6f71e5dc7cd62622RevenantX public static void AddTest4(FlatBufferBuilder builder, VectorOffset test4Offset) { builder.AddOffset(9, test4Offset.Value, 0); } 114557c88c0396220e79e9a43c07f8393a5c68b739dWouter van Oortmerssen public static void StartTest4Vector(FlatBufferBuilder builder, int numElems) { builder.StartVector(4, numElems, 2); } 115588564d74f2968808557d96b6f71e5dc7cd62622RevenantX public static void AddTestarrayofstring(FlatBufferBuilder builder, VectorOffset testarrayofstringOffset) { builder.AddOffset(10, testarrayofstringOffset.Value, 0); } 116588564d74f2968808557d96b6f71e5dc7cd62622RevenantX public static VectorOffset CreateTestarrayofstringVector(FlatBufferBuilder builder, StringOffset[] data) { builder.StartVector(4, data.Length, 4); for (int i = data.Length - 1; i >= 0; i--) builder.AddOffset(data[i].Value); return builder.EndVector(); } 117557c88c0396220e79e9a43c07f8393a5c68b739dWouter van Oortmerssen public static void StartTestarrayofstringVector(FlatBufferBuilder builder, int numElems) { builder.StartVector(4, numElems, 4); } 118588564d74f2968808557d96b6f71e5dc7cd62622RevenantX public static void AddTestarrayoftables(FlatBufferBuilder builder, VectorOffset testarrayoftablesOffset) { builder.AddOffset(11, testarrayoftablesOffset.Value, 0); } 119588564d74f2968808557d96b6f71e5dc7cd62622RevenantX public static VectorOffset CreateTestarrayoftablesVector(FlatBufferBuilder builder, Offset<Monster>[] data) { builder.StartVector(4, data.Length, 4); for (int i = data.Length - 1; i >= 0; i--) builder.AddOffset(data[i].Value); return builder.EndVector(); } 120557c88c0396220e79e9a43c07f8393a5c68b739dWouter van Oortmerssen public static void StartTestarrayoftablesVector(FlatBufferBuilder builder, int numElems) { builder.StartVector(4, numElems, 4); } 121588564d74f2968808557d96b6f71e5dc7cd62622RevenantX public static void AddEnemy(FlatBufferBuilder builder, Offset<Monster> enemyOffset) { builder.AddOffset(12, enemyOffset.Value, 0); } 122588564d74f2968808557d96b6f71e5dc7cd62622RevenantX public static void AddTestnestedflatbuffer(FlatBufferBuilder builder, VectorOffset testnestedflatbufferOffset) { builder.AddOffset(13, testnestedflatbufferOffset.Value, 0); } 123588564d74f2968808557d96b6f71e5dc7cd62622RevenantX public static VectorOffset CreateTestnestedflatbufferVector(FlatBufferBuilder builder, byte[] data) { builder.StartVector(1, data.Length, 1); for (int i = data.Length - 1; i >= 0; i--) builder.AddByte(data[i]); return builder.EndVector(); } 124557c88c0396220e79e9a43c07f8393a5c68b739dWouter van Oortmerssen public static void StartTestnestedflatbufferVector(FlatBufferBuilder builder, int numElems) { builder.StartVector(1, numElems, 1); } 125588564d74f2968808557d96b6f71e5dc7cd62622RevenantX public static void AddTestempty(FlatBufferBuilder builder, Offset<Stat> testemptyOffset) { builder.AddOffset(14, testemptyOffset.Value, 0); } 1264fb5a764df4c4fa249c4a85b3f89be2a3e6deb9bWouter van Oortmerssen public static void AddTestbool(FlatBufferBuilder builder, bool testbool) { builder.AddBool(15, testbool, false); } 1277ef2fc251735f019a21b5e0aa88053a1faffd7c7Wouter van Oortmerssen public static void AddTesthashs32Fnv1(FlatBufferBuilder builder, int testhashs32Fnv1) { builder.AddInt(16, testhashs32Fnv1, 0); } 1287ef2fc251735f019a21b5e0aa88053a1faffd7c7Wouter van Oortmerssen public static void AddTesthashu32Fnv1(FlatBufferBuilder builder, uint testhashu32Fnv1) { builder.AddUint(17, testhashu32Fnv1, 0); } 1297ef2fc251735f019a21b5e0aa88053a1faffd7c7Wouter van Oortmerssen public static void AddTesthashs64Fnv1(FlatBufferBuilder builder, long testhashs64Fnv1) { builder.AddLong(18, testhashs64Fnv1, 0); } 1307ef2fc251735f019a21b5e0aa88053a1faffd7c7Wouter van Oortmerssen public static void AddTesthashu64Fnv1(FlatBufferBuilder builder, ulong testhashu64Fnv1) { builder.AddUlong(19, testhashu64Fnv1, 0); } 1317ef2fc251735f019a21b5e0aa88053a1faffd7c7Wouter van Oortmerssen public static void AddTesthashs32Fnv1a(FlatBufferBuilder builder, int testhashs32Fnv1a) { builder.AddInt(20, testhashs32Fnv1a, 0); } 1327ef2fc251735f019a21b5e0aa88053a1faffd7c7Wouter van Oortmerssen public static void AddTesthashu32Fnv1a(FlatBufferBuilder builder, uint testhashu32Fnv1a) { builder.AddUint(21, testhashu32Fnv1a, 0); } 1337ef2fc251735f019a21b5e0aa88053a1faffd7c7Wouter van Oortmerssen public static void AddTesthashs64Fnv1a(FlatBufferBuilder builder, long testhashs64Fnv1a) { builder.AddLong(22, testhashs64Fnv1a, 0); } 1347ef2fc251735f019a21b5e0aa88053a1faffd7c7Wouter van Oortmerssen public static void AddTesthashu64Fnv1a(FlatBufferBuilder builder, ulong testhashu64Fnv1a) { builder.AddUlong(23, testhashu64Fnv1a, 0); } 135ac10873e26f99b3d054d1cb89c00bad239ace691Maxim Zaks public static void AddTestarrayofbools(FlatBufferBuilder builder, VectorOffset testarrayofboolsOffset) { builder.AddOffset(24, testarrayofboolsOffset.Value, 0); } 136ac10873e26f99b3d054d1cb89c00bad239ace691Maxim Zaks public static VectorOffset CreateTestarrayofboolsVector(FlatBufferBuilder builder, bool[] data) { builder.StartVector(1, data.Length, 1); for (int i = data.Length - 1; i >= 0; i--) builder.AddBool(data[i]); return builder.EndVector(); } 137ac10873e26f99b3d054d1cb89c00bad239ace691Maxim Zaks public static void StartTestarrayofboolsVector(FlatBufferBuilder builder, int numElems) { builder.StartVector(1, numElems, 1); } 13829d957ed5e58af0ce689c8c0312f061f17fc850fWouter van Oortmerssen public static void AddTestf(FlatBufferBuilder builder, float testf) { builder.AddFloat(25, testf, 3.14159f); } 1394d7890c2c912d926f5e7a11cc2106bb37b5f0158Wouter van Oortmerssen public static void AddTestf2(FlatBufferBuilder builder, float testf2) { builder.AddFloat(26, testf2, 3.0f); } 140fd542c71e35774f640073cb6fb3fa939d2f19f87Wouter van Oortmerssen public static void AddTestf3(FlatBufferBuilder builder, float testf3) { builder.AddFloat(27, testf3, 0.0f); } 141afa276288c8db9a983aa8ae134328b1b447bec70Wouter van Oortmerssen public static void AddTestarrayofstring2(FlatBufferBuilder builder, VectorOffset testarrayofstring2Offset) { builder.AddOffset(28, testarrayofstring2Offset.Value, 0); } 142afa276288c8db9a983aa8ae134328b1b447bec70Wouter van Oortmerssen public static VectorOffset CreateTestarrayofstring2Vector(FlatBufferBuilder builder, StringOffset[] data) { builder.StartVector(4, data.Length, 4); for (int i = data.Length - 1; i >= 0; i--) builder.AddOffset(data[i].Value); return builder.EndVector(); } 143afa276288c8db9a983aa8ae134328b1b447bec70Wouter van Oortmerssen public static void StartTestarrayofstring2Vector(FlatBufferBuilder builder, int numElems) { builder.StartVector(4, numElems, 4); } 144a5cc2092a62e7ee6541cc380b861cf7ac4de8cb0tianyapiaozi public static void AddTestarrayofsortedstruct(FlatBufferBuilder builder, VectorOffset testarrayofsortedstructOffset) { builder.AddOffset(29, testarrayofsortedstructOffset.Value, 0); } 145a5cc2092a62e7ee6541cc380b861cf7ac4de8cb0tianyapiaozi public static void StartTestarrayofsortedstructVector(FlatBufferBuilder builder, int numElems) { builder.StartVector(8, numElems, 4); } 146dddd0865cb161a081afbdfa11919622a49f4141aWouter van Oortmerssen public static void AddFlex(FlatBufferBuilder builder, VectorOffset flexOffset) { builder.AddOffset(30, flexOffset.Value, 0); } 147dddd0865cb161a081afbdfa11919622a49f4141aWouter van Oortmerssen public static VectorOffset CreateFlexVector(FlatBufferBuilder builder, byte[] data) { builder.StartVector(1, data.Length, 1); for (int i = data.Length - 1; i >= 0; i--) builder.AddByte(data[i]); return builder.EndVector(); } 148dddd0865cb161a081afbdfa11919622a49f4141aWouter van Oortmerssen public static void StartFlexVector(FlatBufferBuilder builder, int numElems) { builder.StartVector(1, numElems, 1); } 149f064a6cc60b0978509280002f93dcb9d08a543d8Stewart Miles public static void AddTest5(FlatBufferBuilder builder, VectorOffset test5Offset) { builder.AddOffset(31, test5Offset.Value, 0); } 150f064a6cc60b0978509280002f93dcb9d08a543d8Stewart Miles public static void StartTest5Vector(FlatBufferBuilder builder, int numElems) { builder.StartVector(4, numElems, 2); } 1513282a84e3068d2ff0ded5a683ceea0806da21ed6Kevin Rose public static void AddVectorOfLongs(FlatBufferBuilder builder, VectorOffset vectorOfLongsOffset) { builder.AddOffset(32, vectorOfLongsOffset.Value, 0); } 1523282a84e3068d2ff0ded5a683ceea0806da21ed6Kevin Rose public static VectorOffset CreateVectorOfLongsVector(FlatBufferBuilder builder, long[] data) { builder.StartVector(8, data.Length, 8); for (int i = data.Length - 1; i >= 0; i--) builder.AddLong(data[i]); return builder.EndVector(); } 1533282a84e3068d2ff0ded5a683ceea0806da21ed6Kevin Rose public static void StartVectorOfLongsVector(FlatBufferBuilder builder, int numElems) { builder.StartVector(8, numElems, 8); } 1543282a84e3068d2ff0ded5a683ceea0806da21ed6Kevin Rose public static void AddVectorOfDoubles(FlatBufferBuilder builder, VectorOffset vectorOfDoublesOffset) { builder.AddOffset(33, vectorOfDoublesOffset.Value, 0); } 1553282a84e3068d2ff0ded5a683ceea0806da21ed6Kevin Rose public static VectorOffset CreateVectorOfDoublesVector(FlatBufferBuilder builder, double[] data) { builder.StartVector(8, data.Length, 8); for (int i = data.Length - 1; i >= 0; i--) builder.AddDouble(data[i]); return builder.EndVector(); } 1563282a84e3068d2ff0ded5a683ceea0806da21ed6Kevin Rose public static void StartVectorOfDoublesVector(FlatBufferBuilder builder, int numElems) { builder.StartVector(8, numElems, 8); } 157321a1c9dc0bb2205feb1bb9fd079546403aa852fWouter van Oortmerssen public static void AddParentNamespaceTest(FlatBufferBuilder builder, Offset<MyGame.InParentNamespace> parentNamespaceTestOffset) { builder.AddOffset(34, parentNamespaceTestOffset.Value, 0); } 158588564d74f2968808557d96b6f71e5dc7cd62622RevenantX public static Offset<Monster> EndMonster(FlatBufferBuilder builder) { 159517c964fe2099ecc0810db33cfd45b406b3f3132Wouter van Oortmerssen int o = builder.EndObject(); 160517c964fe2099ecc0810db33cfd45b406b3f3132Wouter van Oortmerssen builder.Required(o, 10); // name 161588564d74f2968808557d96b6f71e5dc7cd62622RevenantX return new Offset<Monster>(o); 162517c964fe2099ecc0810db33cfd45b406b3f3132Wouter van Oortmerssen } 163588564d74f2968808557d96b6f71e5dc7cd62622RevenantX public static void FinishMonsterBuffer(FlatBufferBuilder builder, Offset<Monster> offset) { builder.Finish(offset.Value, "MONS"); } 164e1f8037cb55cbeac5d96ad63c2f5c70560737340Wouter van Oortmerssen 1658468ea1ab410ffaa1eed99750e4c77b496b72fd5Wouter van Oortmerssen public static VectorOffset CreateSortedVectorOfMonster(FlatBufferBuilder builder, Offset<Monster>[] offsets) { 16652ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen Array.Sort(offsets, (Offset<Monster> o1, Offset<Monster> o2) => Table.CompareStrings(Table.__offset(10, o1.Value, builder.DataBuffer), Table.__offset(10, o2.Value, builder.DataBuffer), builder.DataBuffer)); 167dc7f5bc0d80730ef45b368be90ac1208c1394707TGIshib return builder.CreateVectorOfTables(offsets); 168dc7f5bc0d80730ef45b368be90ac1208c1394707TGIshib } 169dc7f5bc0d80730ef45b368be90ac1208c1394707TGIshib 1708468ea1ab410ffaa1eed99750e4c77b496b72fd5Wouter van Oortmerssen public static Monster? __lookup_by_key(int vectorLocation, string key, ByteBuffer bb) { 1717c69c5dc3d635e29e3442339caa8eb06b8b9775cTGIshib byte[] byteKey = System.Text.Encoding.UTF8.GetBytes(key); 1728468ea1ab410ffaa1eed99750e4c77b496b72fd5Wouter van Oortmerssen int span = bb.GetInt(vectorLocation - 4); 173e1f8037cb55cbeac5d96ad63c2f5c70560737340Wouter van Oortmerssen int start = 0; 174dc7f5bc0d80730ef45b368be90ac1208c1394707TGIshib while (span != 0) { 175dc7f5bc0d80730ef45b368be90ac1208c1394707TGIshib int middle = span / 2; 17652ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen int tableOffset = Table.__indirect(vectorLocation + 4 * (start + middle), bb); 17752ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen int comp = Table.CompareStrings(Table.__offset(10, bb.Length - tableOffset, bb), byteKey, bb); 178e1f8037cb55cbeac5d96ad63c2f5c70560737340Wouter van Oortmerssen if (comp > 0) { 179e1f8037cb55cbeac5d96ad63c2f5c70560737340Wouter van Oortmerssen span = middle; 180e1f8037cb55cbeac5d96ad63c2f5c70560737340Wouter van Oortmerssen } else if (comp < 0) { 181dc7f5bc0d80730ef45b368be90ac1208c1394707TGIshib middle++; 182dc7f5bc0d80730ef45b368be90ac1208c1394707TGIshib start += middle; 183dc7f5bc0d80730ef45b368be90ac1208c1394707TGIshib span -= middle; 184e1f8037cb55cbeac5d96ad63c2f5c70560737340Wouter van Oortmerssen } else { 18552ca75506abd82b5616bdef4d28e9535262c1d65Wouter van Oortmerssen return new Monster().__assign(tableOffset, bb); 186dc7f5bc0d80730ef45b368be90ac1208c1394707TGIshib } 187dc7f5bc0d80730ef45b368be90ac1208c1394707TGIshib } 188dc7f5bc0d80730ef45b368be90ac1208c1394707TGIshib return null; 189dc7f5bc0d80730ef45b368be90ac1208c1394707TGIshib } 190557c88c0396220e79e9a43c07f8393a5c68b739dWouter van Oortmerssen}; 191557c88c0396220e79e9a43c07f8393a5c68b739dWouter van Oortmerssen 192557c88c0396220e79e9a43c07f8393a5c68b739dWouter van Oortmerssen 193557c88c0396220e79e9a43c07f8393a5c68b739dWouter van Oortmerssen} 194