public override void Initialize(BassEngine engine, Dictionary<int, string> plugins)
        {
            _bassEngine = engine;
            _files = new Queue<string>();
            _supportetExtensions = Utils.BASSAddOnGetSupportedFileExtensions(plugins, true)
                                        .Split(new[] {';'}, StringSplitOptions.RemoveEmptyEntries);

            for (int i = 0; i < _supportetExtensions.Length; i++)
            {
                _supportetExtensions[i] = _supportetExtensions[i].Remove(0, 1);
            }
        }
 public override void Initialize(BassEngine engine, Dictionary<int, string> plugins)
 {
     _engine = engine;
 }
 public override void Free()
 {
     _engine = null;
     _stream = null;
 }
 public abstract void Initialize(BassEngine engine, Dictionary<int, string> plugins);
        public void Deactivate()
        {
            if(_currentChannel == null) return;

            _currentChannel.Dispose();

            _bassEngine = null;
            if(_playbackEngine != null)
                _playbackEngine.Free();
            if(_recorder != null)
                _recorder.Dispose();

            _nextChannel = null;
            _currentChannel = null;
            _plugins = null;
            _recorder = null;

            BassManager.Free();
        }
        public void Activate()
        {
            BassManager.InitBass();
            //BassManager.InitRecord();

            _plugins = Bass.BASS_PluginLoadDirectory(Path.Combine(AppDomain.CurrentDomain.BaseDirectory,
                                           "Data\\DLL".CombinePath("PlugIns")));
            _bassEngine = new BassEngine();
        }
 public override void Free()
 {
     _bassEngine = null;
     _files = null;
 }