public static BASS_PLUGININFO BASS_PluginGetInfo(int handle) { if (handle != 0) { IntPtr ptr = BASS_PluginGetInfoPtr(handle); if (ptr != IntPtr.Zero) { BASS_PLUGININFO _plugininfo = (BASS_PLUGININFO)Marshal.PtrToStructure(ptr, typeof(BASS_PLUGININFO)); return(new BASS_PLUGININFO(_plugininfo.version, _plugininfo.formatc, ptr)); } return(null); } return (new BASS_PLUGININFO(BASS_GetVersion(), new BASS_PLUGINFORM[] { new BASS_PLUGINFORM("WAVE Audio", "*.wav", BASSChannelType.BASS_CTYPE_STREAM_WAV), new BASS_PLUGINFORM("Ogg Vorbis", "*.ogg", BASSChannelType.BASS_CTYPE_STREAM_OGG), new BASS_PLUGINFORM("MPEG layer 1", "*.mp1;*.m1a", BASSChannelType.BASS_CTYPE_STREAM_MP1), new BASS_PLUGINFORM("MPEG layer 2", "*.mp2;*.m2a;*.mpa", BASSChannelType.BASS_CTYPE_STREAM_MP2), new BASS_PLUGINFORM("MPEG layer 3", "*.mp3;*.mpg;*.mpeg;*.mp3pro", BASSChannelType.BASS_CTYPE_STREAM_MP3), new BASS_PLUGINFORM("Audio IFF", "*.aif;*.aiff", BASSChannelType.BASS_CTYPE_STREAM_AIFF), new BASS_PLUGINFORM("Broadcast Wave", "*.bwf", BASSChannelType.BASS_CTYPE_STREAM_WAV) })); }
public BASS_PLUGININFO(IntPtr pluginInfoPtr) { if (pluginInfoPtr != IntPtr.Zero) { BASS_PLUGININFO _plugininfo = (BASS_PLUGININFO)Marshal.PtrToStructure(pluginInfoPtr, typeof(BASS_PLUGININFO)); version = _plugininfo.version; formatc = _plugininfo.formatc; formats = new BASS_PLUGINFORM[formatc]; ReadArrayStructure(formatc, pluginInfoPtr); } }