public static ICoreSetup GetSetup() { var setup = new CoreSetup(); setup.Disable(ComponentSlots.UserInterface); return(setup); }
private static void Encode(Stream input, Stream output, Stream error) { var setup = new CoreSetup(); setup.Disable(ComponentSlots.All); setup.Enable(ComponentSlots.Configuration); setup.Enable(ComponentSlots.Logger); using (var core = new Core(setup)) { try { core.Load(new[] { //Stub component used to provide the configuration. new BassEncoderBehaviourStub() }); core.Initialize(); } catch (Exception e) { Logger.Write(typeof(BassEncoderHost), LogLevel.Error, "Failed to initialize core: {0}", e.Message); throw; } try { Logger.Write(typeof(BassEncoderHost), LogLevel.Debug, "Begin reading items."); var encoderItems = ReadInput <EncoderItem[]>(input); Logger.Write(typeof(BassEncoderHost), LogLevel.Debug, "Read {0} items.", encoderItems.Length); using (var encoder = new BassEncoder(encoderItems)) { encoder.InitializeComponent(core); Encode(encoder, input, output, error); } } catch (Exception e) { Logger.Write(typeof(BassEncoderHost), LogLevel.Error, "Failed to encode items: {0}", e.Message); throw; } } }