private static unsafe void OnRouteMessageReceivedImpl(cef_media_observer_t *self, cef_media_route_t *route, void *message, UIntPtr message_size) { var instance = GetInstance((IntPtr)self) as CefMediaObserver; if (instance == null || ((ICefMediaObserverPrivate)instance).AvoidOnRouteMessageReceived()) { ReleaseIfNonNull((cef_base_ref_counted_t *)route); return; } instance.OnRouteMessageReceived(CefMediaRoute.Wrap(CefMediaRoute.Create, route), unchecked ((IntPtr)message), (long)message_size); }
private static unsafe void OnRouteStateChangedImpl(cef_media_observer_t *self, cef_media_route_t *route, CefMediaRouteConnectionState state) { var instance = GetInstance((IntPtr)self) as CefMediaObserver; if (instance == null || ((ICefMediaObserverPrivate)instance).AvoidOnRouteStateChanged()) { ReleaseIfNonNull((cef_base_ref_counted_t *)route); return; } instance.OnRouteStateChanged(CefMediaRoute.Wrap(CefMediaRoute.Create, route), state); }
// void (*)(_cef_media_route_create_callback_t* self, cef_media_route_create_result_t result, const cef_string_t* error, _cef_media_route_t* route)* private static unsafe void OnMediaRouteCreateFinishedImpl(cef_media_route_create_callback_t *self, CefMediaRouteCreateResult result, cef_string_t *error, cef_media_route_t *route) { var instance = GetInstance((IntPtr)self) as CefMediaRouteCreateCallback; if (instance == null || ((ICefMediaRouteCreateCallbackPrivate)instance).AvoidOnMediaRouteCreateFinished()) { ReleaseIfNonNull((cef_base_ref_counted_t *)route); return; } instance.OnMediaRouteCreateFinished(result, CefString.Read(error), CefMediaRoute.Wrap(CefMediaRoute.Create, route)); }
private static unsafe void OnRoutesImpl(cef_media_observer_t *self, UIntPtr routesCount, cef_media_route_t **routes) { var instance = GetInstance((IntPtr)self) as CefMediaObserver; if (instance == null || ((ICefMediaObserverPrivate)instance).AvoidOnRoutes()) { return; } CefMediaRoute[] obj_routes = new CefMediaRoute[(int)routesCount]; for (int i = 0; i < obj_routes.Length; i++) { var item = *(routes + i); item->@base.AddRef(); obj_routes[i] = CefMediaRoute.Wrap(CefMediaRoute.Create, item); } instance.OnRoutes(obj_routes); }