예제 #1
0
        private ImageDecoder GetImageDecoder()
        {
            if (_imageDecoder == null)
            {
                if (_config.ImageDecoder != null)
                {
                    _imageDecoder = _config.ImageDecoder;
                }
                else
                {
                    IAnimatedFactory      animatedFactory = GetAnimatedFactory();
                    IAnimatedImageFactory animatedImageFactory;
                    if (animatedFactory != null)
                    {
                        animatedImageFactory = GetAnimatedFactory().GetAnimatedImageFactory();
                    }
                    else
                    {
                        animatedImageFactory = null;
                    }

                    _imageDecoder = new ImageDecoder(
                        animatedImageFactory,
                        GetPlatformDecoder(),
                        _config.BitmapConfig);
                }
            }

            return(_imageDecoder);
        }
예제 #2
0
        /// <summary>
        /// Gets the animated factory.
        /// </summary>
        public IAnimatedFactory GetAnimatedFactory()
        {
            if (_animatedFactory == null)
            {
                _animatedFactory = AnimatedFactoryProvider.GetAnimatedFactory(
                    GetPlatformBitmapFactory(),
                    _config.ExecutorSupplier);
            }

            return(_animatedFactory);
        }