public bool Initialize()
        {
            this.logger.Clear();
            bool success = true;

            try
            {
                CameraControl.Devices.Log.LogDebug += Log_LogDebug;
                CameraControl.Devices.Log.LogInfo  += Log_LogInfo;
                CameraControl.Devices.Log.LogError += Log_LogError;

                ServiceProvider.Configure();

                ServiceProvider.Settings = new Settings();
                ServiceProvider.Settings = ServiceProvider.Settings.Load();

                ServiceProvider.Settings.DisableNativeDrivers      = false;
                ServiceProvider.DeviceManager.DisableNativeDrivers = ServiceProvider.Settings.DisableNativeDrivers;

                //ServiceProvider.Settings.DisableNativeDrivers = true;
                //ServiceProvider.DeviceManager.DisableNativeDrivers = true;
                ServiceProvider.DeviceManager.UseExperimentalDrivers = false;

                ServiceProvider.Settings.LoadSessionData();
                ServiceProvider.Settings.SessionSelected         += Settings_SessionSelected;
                ServiceProvider.DeviceManager.CameraConnected    += DeviceManager_CameraConnected;
                ServiceProvider.DeviceManager.CameraSelected     += DeviceManager_CameraSelected;
                ServiceProvider.DeviceManager.CameraDisconnected += DeviceManager_CameraDisconnected;

                success  = ServiceProvider.DeviceManager.ConnectToCamera();
                success &= this.Camera != null && this.Camera.IsConnected;

                if (!success)
                {
                    if (this.Camera != null)
                    {
                        if (this.logger.ToString().Contains("connected"))
                        {
                            success = true;
                        }
                    }
                }

                if (success)
                {
                    ServiceProvider.DeviceManager.PhotoCaptured += DeviceManager_PhotoCaptured;
                    this.logger.AppendLine(this.Camera.DisplayName);
                }
            }
            finally
            {
                CameraControl.Devices.Log.LogDebug -= Log_LogDebug;
                CameraControl.Devices.Log.LogInfo  -= Log_LogInfo;
                CameraControl.Devices.Log.LogError -= Log_LogError;
            }

            this.InitializationLog = this.logger.ToString();

            return(success);
        }
Beispiel #2
0
 private static void InitApplication()
 {
     ServiceProvider.Configure();
     Log.Debug("Command line utility started");
     ServiceProvider.Settings = new Settings();
     ServiceProvider.Settings = ServiceProvider.Settings.Load();
     ServiceProvider.Settings.LoadSessionData();
     ServiceProvider.WindowsManager = new WindowsManager();
     //WIAManager manager = new WIAManager();
     StaticHelper.Instance.PropertyChanged         += Instance_PropertyChanged;
     ServiceProvider.DeviceManager.CameraConnected += DeviceManagerCameraConnected;
     ServiceProvider.DeviceManager.ConnectToCamera();
     ServiceProvider.DeviceManager.PhotoCaptured += DeviceManager_PhotoCaptured;
     if (ServiceProvider.DeviceManager.SelectedCameraDevice.AttachedPhotoSession != null)
     {
         ServiceProvider.Settings.DefaultSession = (PhotoSession)
                                                   ServiceProvider.DeviceManager.SelectedCameraDevice.AttachedPhotoSession;
     }
     foreach (ICameraDevice cameraDevice in ServiceProvider.DeviceManager.ConnectedDevices)
     {
         cameraDevice.CaptureCompleted += SelectedCameraDevice_CaptureCompleted;
     }
     ServiceProvider.ScriptManager.OutPutMessageReceived += ScriptManager_OutPutMessageReceived;
     //ServiceProvider.DeviceManager.SelectedCameraDevice.CaptureCompleted += SelectedCameraDevice_CaptureCompleted;
 }
Beispiel #3
0
 /// <summary>
 /// Initializes this instance.
 /// </summary>
 public async static Task Initialize()
 {
     await Task.Run(() =>
     {
         ServiceProvider.Configure();
         var dm = ServiceProvider.DeviceManager;
         dm.UseExperimentalDrivers = false;
         dm.ConnectToCamera();
         dm.PhotoCaptured += DeviceManager_PhotoCaptured;
         Filename          = "test.jpg";
     });
 }
Beispiel #4
0
        /// <summary>
        /// Initializes the specified device.
        /// </summary>
        /// <param name="device">The device.</param>
        public void Initialize(ICameraDevice device)
        {
            ServiceProvider.Configure();
            var dm = ServiceProvider.DeviceManager;

            dm.UseExperimentalDrivers = false;
            dm.ConnectToCamera();

            _liveViewTimer.Stop();
            _liveViewTimer.Tick             += _liveViewTimer_Tick;
            CameraDevice                     = device;
            CameraDevice.PhotoCaptured      += CameraDevice_PhotoCaptured;
            CameraDevice.CameraDisconnected += CameraDevice_CameraDisconnected;
        }
Beispiel #5
0
 /// <summary>
 /// Initializes this instance.
 /// </summary>
 /// <returns><c>true</c> if successful, <c>false</c> otherwise.</returns>
 public async Task Initialize()
 {
     await Task.Run(() =>
     {
         ServiceProvider.Configure();
         ServiceProvider.DeviceManager.UseExperimentalDrivers = false;
         if (ServiceProvider.DeviceManager.ConnectToCamera())
         {
             _liveViewTimer.Stop();
             _liveViewTimer.Tick             += _liveViewTimer_Tick;
             CameraDevice                     = ServiceProvider.DeviceManager.SelectedCameraDevice;
             CameraDevice.PhotoCaptured      += CameraDevice_PhotoCaptured;
             CameraDevice.CameraDisconnected += CameraDevice_CameraDisconnected;
         }
     });
 }
Beispiel #6
0
        public override void Configuration(IAppBuilder app)
        {
            var ctx = new WebContext(new WebContextFactory());
            var ioc = new IOC();

            ServiceProvider.Configure(ioc.Resolver);

            // ServiceProvider.Current.DataAccess.StartUnitOfWork() is not called here. It should be called in each controller action method.
            // This allows more control of when database transactions commit, which solves issues where different processes access the same
            // tables and cause transaction deadlock issues.

            // WebApi setup (includes adding the Authorization filter)
            config = new HttpConfiguration();
            WebApiConfig.Register(config);

            app.UseWebApi(config);
        }
Beispiel #7
0
        /// <summary>
        /// Initializes this instance.
        /// </summary>
        /// <returns><c>true</c> if successful, <c>false</c> otherwise.</returns>
        public async Task <bool> Initialize()
        {
            await Task.Run(() =>
            {
                ServiceProvider.Configure();
                ServiceProvider.DeviceManager.UseExperimentalDrivers = false; // canon
                if (ServiceProvider.DeviceManager.ConnectToCamera())
                {
                    CameraDevice = ServiceProvider.DeviceManager.SelectedCameraDevice;
                    Initialize(CameraDevice);
                    return(true);
                }
                return(false);
            });

            return(false);
        }
Beispiel #8
0
        private void InitApplication()
        {
            ServiceProvider.Configure();

            ServiceProvider.Settings = new Settings();
            ServiceProvider.Settings = ServiceProvider.Settings.Load();
            ServiceProvider.Branding = ServiceProvider.Settings.LoadBranding();
            if (!string.IsNullOrEmpty(ServiceProvider.Branding.StartupScreenImage) && File.Exists(ServiceProvider.Branding.StartupScreenImage))
            {
                BitmapImage bi = new BitmapImage();
                // BitmapImage.UriSource must be in a BeginInit/EndInit block.
                bi.BeginInit();
                bi.UriSource = new Uri(ServiceProvider.Branding.StartupScreenImage);
                bi.EndInit();
                background.Source = bi;
            }
            ServiceProvider.ActionManager.Actions = new AsyncObservableCollection <IMenuAction>
            {
                new CmdFocusStackingCombineZP(),
                new CmdEnfuse(),
                new CmdToJpg(),
                //new CmdExpJpg()
            };
            //ServiceProvider.Branding.ApplicationTitle = "digiCamControl";
            //ServiceProvider.Branding.DefaultMissingThumbImage = "";
            //ServiceProvider.Branding.DefaultThumbImage = "";
            //ServiceProvider.Branding.LogoImage = "";
            //ServiceProvider.Branding.StartupScreenImage = "";
            //ServiceProvider.Settings.Save(ServiceProvider.Branding);
            if (ServiceProvider.Settings.DisableNativeDrivers && MessageBox.Show(TranslationStrings.MsgDisabledDrivers, "", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
            {
                ServiceProvider.Settings.DisableNativeDrivers = false;
            }
            ServiceProvider.Settings.LoadSessionData();
            TranslationManager.LoadLanguage(ServiceProvider.Settings.SelectedLanguage);

            ServiceProvider.WindowsManager = new WindowsManager();
            ServiceProvider.WindowsManager.Add(new FullScreenWnd());
            ServiceProvider.WindowsManager.Add(new EditDefaultSession());
            ServiceProvider.WindowsManager.Add(new LiveViewManager());
            ServiceProvider.WindowsManager.Add(new MultipleCameraWnd());
            ServiceProvider.WindowsManager.Add(new CameraPropertyWnd());
            ServiceProvider.WindowsManager.Add(new BrowseWnd());
            ServiceProvider.WindowsManager.Add(new TagSelectorWnd());
            ServiceProvider.WindowsManager.Add(new DownloadPhotosWnd());
            ServiceProvider.WindowsManager.Add(new BulbWnd());
            ServiceProvider.WindowsManager.Add(new AstroLiveViewWnd());
            ServiceProvider.WindowsManager.Add(new ScriptWnd());
            ServiceProvider.WindowsManager.Event += WindowsManager_Event;
            ServiceProvider.Trigger.Start();
            ServiceProvider.PluginManager.LoadPlugins(Path.Combine(Path.GetDirectoryName(Assembly.GetEntryAssembly().Location), "Plugins"));
            _basemainwindow = new MainWindow();
            ServiceProvider.PluginManager.MainWindowPlugins.Add(_basemainwindow);
            ServiceProvider.PluginManager.ToolPlugins.Add(new ScriptWnd());
            // event handlers
            ServiceProvider.Settings.SessionSelected      += Settings_SessionSelected;
            ServiceProvider.DeviceManager.CameraConnected += DeviceManager_CameraConnected;
            ServiceProvider.DeviceManager.CameraSelected  += DeviceManager_CameraSelected;
            //-------------------
            ServiceProvider.DeviceManager.DisableNativeDrivers = ServiceProvider.Settings.DisableNativeDrivers;
            ServiceProvider.DeviceManager.ConnectToCamera();
            Thread.Sleep(500);
            StartApplication();
            Dispatcher.Invoke(new Action(Hide));
        }
        public void TestInit()
        {
            var ioc = new IOC();

            ServiceProvider.Configure(ioc.Resolver);
        }
        private void InitApplication()
        {
            // prevent some application crash
            WpfCommands.DisableWpfTabletSupport();

            ServiceProvider.Configure();

            ServiceProvider.Settings = new Settings();
            ServiceProvider.Settings = ServiceProvider.Settings.Load();
            ServiceProvider.Branding = ServiceProvider.Settings.LoadBranding();
            if (!string.IsNullOrEmpty(ServiceProvider.Branding.StartupScreenImage) && File.Exists(ServiceProvider.Branding.StartupScreenImage))
            {
                BitmapImage bi = new BitmapImage();
                // BitmapImage.UriSource must be in a BeginInit/EndInit block.
                bi.BeginInit();
                bi.UriSource = new Uri(ServiceProvider.Branding.StartupScreenImage);
                bi.EndInit();
                background.Source = bi;
            }
            ServiceProvider.ActionManager.Actions = new AsyncObservableCollection <IMenuAction>
            {
                new CmdFocusStackingCombineZP(),
                new CmdEnfuse(),
                new CmdToJpg(),
                //new CmdExpJpg()
            };

            if (ServiceProvider.Settings.DisableNativeDrivers && MessageBox.Show(TranslationStrings.MsgDisabledDrivers, "", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
            {
                ServiceProvider.Settings.DisableNativeDrivers = false;
            }
            ServiceProvider.Settings.LoadSessionData();
            TranslationManager.LoadLanguage(ServiceProvider.Settings.SelectedLanguage);

            ServiceProvider.WindowsManager = new WindowsManager();
            ServiceProvider.WindowsManager.Add(new FullScreenWnd());
            ServiceProvider.WindowsManager.Add(new LiveViewManager());
            ServiceProvider.WindowsManager.Add(new MultipleCameraWnd());
            ServiceProvider.WindowsManager.Add(new CameraPropertyWnd());
            ServiceProvider.WindowsManager.Add(new BrowseWnd());
            ServiceProvider.WindowsManager.Add(new TagSelectorWnd());
            ServiceProvider.WindowsManager.Add(new DownloadPhotosWnd());
            ServiceProvider.WindowsManager.Add(new BulbWnd());
            ServiceProvider.WindowsManager.Add(new AstroLiveViewWnd());
            ServiceProvider.WindowsManager.Add(new ScriptWnd());
            ServiceProvider.WindowsManager.Event += WindowsManager_Event;
            ServiceProvider.WindowsManager.ApplyTheme();
            ServiceProvider.WindowsManager.RegisterKnowCommands();
            ServiceProvider.Settings.SyncActions(ServiceProvider.WindowsManager.WindowCommands);

            ServiceProvider.Trigger.Start();
            ServiceProvider.PluginManager.CopyPlugins();
            ServiceProvider.PluginManager.LoadPlugins(Path.Combine(Path.GetDirectoryName(Assembly.GetEntryAssembly().Location), "Plugins"));
            _basemainwindow = new MainWindow();
            ServiceProvider.PluginManager.MainWindowPlugins.Add(_basemainwindow);
            ServiceProvider.PluginManager.ToolPlugins.Add(new ScriptWnd());
            // event handlers
            ServiceProvider.Settings.SessionSelected         += Settings_SessionSelected;
            ServiceProvider.DeviceManager.CameraConnected    += DeviceManager_CameraConnected;
            ServiceProvider.DeviceManager.CameraSelected     += DeviceManager_CameraSelected;
            ServiceProvider.DeviceManager.CameraDisconnected += DeviceManager_CameraDisconnected;
            //-------------------
            ServiceProvider.DeviceManager.DisableNativeDrivers = ServiceProvider.Settings.DisableNativeDrivers;
            if (ServiceProvider.Settings.AddFakeCamera)
            {
                ServiceProvider.DeviceManager.AddFakeCamera();
            }
            try
            {
                ServiceProvider.DeviceManager.ConnectToCamera();
            }
            catch (Exception exception)
            {
                Log.Error("Unable to initialize device manager", exception);
                if (exception.Message.Contains("0AF10CEC-2ECD-4B92-9581-34F6AE0637F3"))
                {
                    MessageBox.Show(
                        "Unable to initialize device manager !\nMissing some components! Please install latest Windows Media Player! ");
                    Application.Current.Shutdown(1);
                }
            }
            Thread.Sleep(500);
            Dispatcher.Invoke(new Action(Hide));
            StartApplication();
        }