/// <summary> /// Child classes must implement this pure virtual function, which must be used to write an object or attribute to /// a particle script. /// </summary> /// <param name="serializer"></param> /// <param name="element"></param> public void write(ParticleScriptSerializer serializer, IElement element) { if (serializer == null) { throw new ArgumentNullException("serializer cannot be null!"); } if (element == null) { throw new ArgumentNullException("element cannot be null!"); } ScriptWriter_Write(nativePtr, serializer.nativePtr, element.NativePointer); }
internal static ParticleScriptSerializer GetInstance(IntPtr ptr) { if (ptr == null || ptr == IntPtr.Zero) { return(null); } if (particleScriptSerializerInstances == null) { particleScriptSerializerInstances = new Dictionary <IntPtr, ParticleScriptSerializer>(); } ParticleScriptSerializer newvalue; if (particleScriptSerializerInstances.TryGetValue(ptr, out newvalue)) { return(newvalue); } newvalue = new ParticleScriptSerializer(ptr); particleScriptSerializerInstances.Add(ptr, newvalue); return(newvalue); }