static extern void KM_dotnet_Interop_CoordMotion_SetStraightTraverseCallback(IntPtr handle, KM_CoordMotionStraightTraverseSixAxisHandler handler);
static extern void KM_dotnet_Interop_CoordMotion_SetStraightTraverseCallback(IntPtr handle, KM_CoordMotionStraightTraverseSixAxisHandler handler);
/// <summary> /// Sets the internal Straight Traverse callback for the CoordMotion.cpp object /// Separate delegate for this callback prevents the Garbage Collector from releasing the /// unmanaged function pointer from being destroyed /// </summary> private void SetStraightTraverseCallback() { try { CoordMotionStraightTraverseHandler = new KM_CoordMotionStraightTraverseSixAxisHandler(OnCoordMotionStraightTraverse); KM_dotnet_Interop_CoordMotion_SetStraightTraverseCallback(_InstanceHandle, CoordMotionStraightTraverseHandler); } catch (DllNotFoundException e) { throw new DMException(this, e, String.Format("Dll Not Found Exception thrown : Caller - [{0}] :: Member - [{1}]", this.ToString(), "SetStraightTraverseCallback")); } catch (EntryPointNotFoundException e) { throw new DMException(this, e, String.Format("Entry Point Not Found Exception thrown : Caller - [{0}] :: Member - [{1}]", this.ToString(), "SetStraightTraverseCallback")); } catch (Exception e) { throw new DMException(this, e, String.Format("General Exception thrown : Caller - [{0}] :: Member - [{1}]", this.ToString(), "SetStraightTraverseCallback")); } }