public IFlatbufferObject __union(int offset, IFlatbufferObject t) { //offset += bb_pos; int indirect = __indirect(offset); t.__init(indirect, bb); return(t); }
public static object GetOrCreateDeserialize(IFlatbufferObject incoming, Type type) { if (incoming == null) { return(null); } object result; // first check if we already deserialize the object at this position fb2objMapping.TryGetValue(incoming.BufferPosition, out result); if (result != null) { UnityEngine.Debug.Log("Incoming-Type:" + incoming.GetType() + " Casting to :" + type.ToString()); // yeah, we found it. no need to create a new object we got it already return(result); } // not deserialized, yet. Create a new object and call the deserialize method with the flatbuffers object var newObject = (IFBSerializable)Activator.CreateInstance(type); newObject.Deserialize(incoming); fb2objMapping[incoming.BufferPosition] = newObject; return(newObject); }
internal Message(int id, IFlatbufferObject body) { this.id = id; this.body = body; }
public FBManualObject __initFromRef(IFlatbufferObject refObj) { __init(refObj.BufferPosition, refObj.ByteBuffer); return(this); }
public static T GetOrCreateDeserialize <T>(IFlatbufferObject incoming) where T : IFBSerializable, new() { return((T)GetOrCreateDeserialize(incoming, typeof(T))); }
private void Delete(BenchmarkIteration iter, ObjectDB <IFlatbufferObject> db, IFlatbufferObject data) { List <Guid> ids = new List <Guid>(); for (var i = 0; i < Benchmark.InnerIterationCount; i++) { ids.Add(db.Insert(data)); } using (iter.StartMeasurement()) { foreach (var id in ids) { db.Delete(id); } } }
private void Insert(BenchmarkIteration iter, ObjectDB <IFlatbufferObject> db, IFlatbufferObject data) { using (iter.StartMeasurement()) { for (var i = 0; i < Benchmark.InnerIterationCount; i++) { db.Insert(data); } } }