Ejemplo n.º 1
0
        static Playlist()
        {
            lock(libspotify.Mutex)
            {
                callbacks = new libspotify.sp_playlist_callbacks();

                callbacks.playlist_renamed = Marshal.GetFunctionPointerForDelegate(playlist_renamed);
                callbacks.playlist_state_changed = Marshal.GetFunctionPointerForDelegate(playlist_state_changed);
                callbacks.playlist_update_in_progress = Marshal.GetFunctionPointerForDelegate(playlist_update_in_progress);
                callbacks.tracks_added = Marshal.GetFunctionPointerForDelegate(tracks_added);
                callbacks.tracks_moved = Marshal.GetFunctionPointerForDelegate(tracks_moved);
                callbacks.tracks_removed = Marshal.GetFunctionPointerForDelegate(tracks_removed);
                callbacks.playlist_metadata_updated = Marshal.GetFunctionPointerForDelegate(metadata_updated);

                int size = Marshal.SizeOf(callbacks);
                callbacksPtr = Marshal.AllocHGlobal(size);
                Marshal.StructureToPtr(callbacks, callbacksPtr, true);
            }
        }
Ejemplo n.º 2
0
        static Playlist()
        {
            lock (libspotify.Mutex)
            {
                callbacks = new libspotify.sp_playlist_callbacks();

                callbacks.playlist_renamed            = Marshal.GetFunctionPointerForDelegate(playlist_renamed);
                callbacks.playlist_state_changed      = Marshal.GetFunctionPointerForDelegate(playlist_state_changed);
                callbacks.playlist_update_in_progress = Marshal.GetFunctionPointerForDelegate(playlist_update_in_progress);
                callbacks.tracks_added              = Marshal.GetFunctionPointerForDelegate(tracks_added);
                callbacks.tracks_moved              = Marshal.GetFunctionPointerForDelegate(tracks_moved);
                callbacks.tracks_removed            = Marshal.GetFunctionPointerForDelegate(tracks_removed);
                callbacks.playlist_metadata_updated = Marshal.GetFunctionPointerForDelegate(metadata_updated);


                int size = Marshal.SizeOf(callbacks);
                callbacksPtr = Marshal.AllocHGlobal(size);
                Marshal.StructureToPtr(callbacks, callbacksPtr, true);
            }
        }