public unsafe void OnRoutes(UIntPtr routesCount, [Immutable] cef_media_route_t **routes) { fixed(cef_media_observer_t *self = &this) { ((delegate * unmanaged[Stdcall] < cef_media_observer_t *, UIntPtr, cef_media_route_t **, void >)on_routes)(self, routesCount, routes); } }
private void on_routes(cef_media_observer_t *self, UIntPtr routesCount, cef_media_route_t **routes) { CheckSelf(self); var mRoutesCount = checked ((int)routesCount); var mRoutes = new CefMediaRoute[mRoutesCount]; for (var i = 0; i < mRoutesCount; i++) { mRoutes[i] = CefMediaRoute.FromNative(routes[i]); } OnRoutes(mRoutes); }
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); }
public unsafe extern void OnRoutes(UIntPtr routesCount, [Immutable] cef_media_route_t **routes);