using System; using System.Collections.Generic; using System.Text; using UnityEngine; namespace IllusionPlugin { /// /// Interface for generic Illusion unity plugins. Every class that implements this will be loaded if the DLL is placed at /// data/Managed/Plugins. /// public interface IPlugin { /// /// Gets the name of the plugin. /// string Name { get; } /// /// Gets the version of the plugin. /// string Version { get; } /// /// Gets invoked when the application is started. /// void OnApplicationStart(); /// /// Gets invoked when the application is closed. /// void OnApplicationQuit(); /// /// Gets invoked on every graphic update. /// void OnUpdate(); /// /// Gets invoked on ever physics update. /// void OnFixedUpdate(); void OnAnimatorIK(int layerIndex); void OnAnimatorMove(); void OnApplicationFocus(bool hasFocus); void OnApplicationPause(bool pauseStatus); void OnAudioFilterRead(float[] data, int channels); void OnBecameInvisible(); void OnBecameVisible(); void OnBeforeTransformParentChanged(); void OnCanvasGroupChanged(); void OnCanvasHierarchyChanged(); void OnCollisionEnter(Collision other); void OnCollisionEnter2D(Collision2D other); void OnCollisionExit(Collision other); void OnCollisionExit2D(Collision2D other); void OnCollisionStay(Collision other); void OnCollisionStay2D(Collision2D other); void OnConnectedToServer(); void OnControllerColliderHit(ControllerColliderHit hit); void OnDidApplyAnimationProperties(); void OnDisable(); void OnDrawGizmos(); void OnDrawGizmosSelected(); void OnEnable(); void OnGUI(); void OnJointBreak(float breakForce); void OnMouseDown(); void OnMouseDrag(); void OnMouseEnter(); void OnMouseExit(); void OnMouseOver(); void OnMouseUp(); void OnMouseUpAsButton(); void OnParticleCollision(GameObject other); void OnPostRender(); void OnPreCull(); void OnPreRender(); void OnRectTransformDimensionsChange(); void OnRenderImage(RenderTexture src, RenderTexture dest); void OnRenderObject(); void OnServerInitialized(); void OnTransformChildrenChanged(); void OnTransformParentChanged(); void OnTriggerEnter(Collider other); void OnTriggerEnter2D(Collider2D other); void OnTriggerExit(Collider other); void OnTriggerExit2D(Collider2D other); void OnTriggerStay(Collider other); void OnTriggerStay2D(Collider2D other); void OnValidate(); void OnWillRenderObject(); void Reset(); } }