using System; using System.Collections.Generic; using System.Runtime.InteropServices; namespace AtomicEngine { public delegate void AtomicEventDelegate (VariantMap eventData); public partial class CSComponent : Component { public uint ManagedID; //public CSComponent () //{ // nativeInstance = NativeCore.RegisterNative (csb_Atomic_CSComponent_Constructor(), this); // ComponentCore.RegisterCSComponent (this); // } virtual public void Start() { } virtual public void Update(float timeStep) { } public void SendEvent(string eventType, Dictionary eventData = null) { EventCore.SendEvent (this, eventType); } public void SubscribeToEvent(AObject sender, string eventType, AtomicEventDelegate function) { EventCore.SubscribeToEvent (this, sender, eventType, function); } public void SubscribeToEvent(string eventType, AtomicEventDelegate function) { EventCore.SubscribeToEvent (this, null, eventType, function); } //[DllImport (Constants.LIBNAME, CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi)] //private static extern IntPtr csb_Atomic_CSComponent_Constructor(); } }