/// <summary> /// /// </summary> /// <param name="opaque"></param> /// <param name="error"></param> private void stopRHandler(IntPtr opaque, ref CDOError error) { stoppedEvent.Set(); }
/// <summary> /// /// </summary> /// <param name="opaque"></param> /// <param name="error"></param> /// <param name="i"></param> private void renderResponder(IntPtr opaque, ref CDOError error, int i) { try { Console.Error.WriteLine("Got rendering result"); int callId = (int)opaque; PendingCall call = _pendingCalls[callId]; _pendingCalls.Remove(callId); if (error.err_code == 0) { call.manualRenderer.rendererId = i; _activeRenderers[i] = new WeakReference(call.manualRenderer); if (call.manual) { call.manualRendererResponder.resultHandler(call.manualRenderer); } else { call.rendererResponder.resultHandler( new RenderingWidget(call.manualRenderer)); } } else { if (call.manual) call.manualRendererResponder.errHandler(error.err_code, StringHelper.fromNative(error.err_message)); else call.rendererResponder.errHandler(error.err_code, StringHelper.fromNative(error.err_message)); } } catch (Exception) { } }
public static extern bool cdo_no_error(ref CDOError error);