示例#1
0
        /// <summary>
        /// Adds a camera to the manager.
        /// throws a argument exception if name is null, empty, or white space
        /// throws a argument null exception if camera object is null
        /// </summary>
        /// <param name="newCamera">Camera object to be added</param>
        /// <param name="name">string wiht the name of the camera</param>
        /// <returns>index to refer to the camera</returns>
        internal int  AddCamera(Camera newCamera, string name)
        {
            if (string.IsNullOrWhiteSpace(name))
            {
                throw new ArgumentException("name cannot be null, empty, or whitespace");
            }
            if (newCamera == null)
            {
                throw new ArgumentNullException("newCamera");
            }
            CameraMetaData cameraData = new CameraMetaData(newCamera, name);

            cameraList.Add(cameraData);
            return(cameraList.IndexOf(cameraData));
        }
示例#2
0
 public MainPage()
 {
     InitializeComponent();
     if (null == metadata)
     {
         try
         {
             StorageFolder installationFolder = Windows.ApplicationModel.Package.Current.InstalledLocation;
             var           f = StorageFile.GetFileFromApplicationUriAsync(new Uri("ms-appx:///Assets/Data/cameras.xml")).AsTask();
             f.Wait();
             var t = f.Result.OpenStreamForReadAsync();
             t.Wait();
             metadata = new CameraMetaData(t.Result);
         }
         catch (CameraMetadataException e)
         {
             ExceptionDisplay.display(e.Message);
         }
     }
     SettingStorage.init();
     NavigationCacheMode = NavigationCacheMode.Enabled;
     imageSelected       = false;
     ApplicationView.GetForCurrentView().SetPreferredMinSize(new Size(200, 100));
 }