Example #1
0
 /// <summary>
 /// Initializes a new instance of the <see cref="ImageCollection"/> class with an existing <see cref="Json.LytroEdofParallax"/> as storage.
 /// </summary>
 /// <param name="parallax">A <see cref="Json.LytroEdofParallax"/> to use as a storage for the collection.</param>
 public ImageCollection(Json.LytroEdofParallax parallax)
 {
     _parallax = parallax;
     if (_parallax.ImageArray == null)
     {
         _parallax.ImageArray = new Json.ParallaxImageItem[0];
     }
 }
Example #2
0
        /// <summary>
        /// Initializes a new instance of the <see cref="ParallaxStackAcceleration"/> class with an existing <see cref="Json.LytroEdofParallax"/> storage.
        /// </summary>
        /// <param name="parallax">A <see cref="Json.LytroEdofParallax"/> to use as a storage for the parallax.</param>
        public ParallaxStackAcceleration(Json.LytroEdofParallax parallax)
        {
            if (parallax == null)
            {
                throw new ArgumentNullException("parallax");
            }

            JsonParallaxStack = parallax;
        }
Example #3
0
            /// <summary>
            /// Initializes a new instance of the <see cref="BlockImageCollection"/> class with an existing <see cref="Json.LytroEdofParallax"/> as storage.
            /// </summary>
            /// <param name="stack">A <see cref="Json.LytroEdofParallax"/> to use as a storage for the collection.</param>
            public BlockImageCollection(Json.LytroEdofParallax stack)
            {
                _stack = stack;
                if (_stack.BlockOfImages == null)
                {
                    _stack.BlockOfImages = new Json.BlockOfParallaxImages();
                }

                if (_stack.BlockOfImages.MetadataArray == null)
                {
                    _stack.BlockOfImages.MetadataArray = new Json.BlockParallaxMetadata[0];
                }
            }
Example #4
0
        private void LoadAcceleration(Json.AccelerationItem accelerationItem)
        {
            if (accelerationItem == null)
            {
                return;
            }

            switch (accelerationItem.Type)
            {
            case Json.LytroRefocusStack.Key:
                _refocusStack = accelerationItem.VendorContent as Json.LytroRefocusStack;
                break;

            case Json.LytroEdofParallax.Key:
                _parallaxStack = accelerationItem.VendorContent as Json.LytroEdofParallax;
                break;
            }
        }
Example #5
0
        /// <summary>
        /// When overriden in derived class, initializes the accessor and returns whether any content is available.
        /// </summary>
        /// <returns>true if the package contains any stacks; false otherwise.</returns>
        protected override bool Initialize()
        {
            if (Metadata == null || Metadata.Picture == null || Metadata.Picture.AccelerationArray == null)
            {
                return(false);
            }

            _refocusStack  = null;
            _parallaxStack = null;

            Json.AccelerationItem[] accelerationArray = Metadata.Picture.AccelerationArray;

            for (int i = 0; i < accelerationArray.Length; i++)
            {
                LoadAcceleration(accelerationArray[i]);
            }

            return(_refocusStack != null || _parallaxStack != null);
        }
Example #6
0
 /// <summary>
 /// Initializes a new instance of the <see cref="ParallaxStackAcceleration"/> class.
 /// </summary>
 public ParallaxStackAcceleration()
 {
     JsonParallaxStack = new Json.LytroEdofParallax();
 }