Beispiel #1
0
        private unsafe void ReadRegionInternal(int level, long x, long y, long width, long height, void *pointer)
        {
            var handle = EnsureNotDisposed();

            OpenSlideInterop.ReadRegion(handle, pointer, x, y, level, width, height);
            ThrowHelper.CheckAndThrowError(handle);
        }
Beispiel #2
0
        private unsafe void ReadAssociatedImageInternal(string name, void *pointer)
        {
            var handle = EnsureNotDisposed();

            OpenSlideInterop.ReadAssociatedImage(handle, name, pointer);
            ThrowHelper.CheckAndThrowError(handle);
        }
        /// <summary>
        /// Get the array of property names.
        /// </summary>
        /// <returns></returns>
        public IReadOnlyList <string> GetAllPropertyNames()
        {
            EnsureNotDisposed();

            string[] properties = Interop.GetPropertyNames(_handle);
            ThrowHelper.CheckAndThrowError(_handle);
            return(properties);
        }
        public IReadOnlyCollection <string> GetAllAssociatedImageNames()
        {
            EnsureNotDisposed();

            var associatedImages = Interop.GetAssociatedImageNames(_handle);

            ThrowHelper.CheckAndThrowError(_handle);
            return(associatedImages);
        }
        public string this[string name]
        {
            get
            {
                EnsureNotDisposed();

                string value = Interop.GetPropertyValue(_handle, name);
                ThrowHelper.CheckAndThrowError(_handle);
                return(value);
            }
        }
        /// <summary>
        /// Get a (width, height) tuple for level k of the slide.
        /// </summary>
        /// <param name="level">the k level</param>
        /// <returns>A (width, height) tuple for level k of the slide.</returns>
        public ImageDimensions GetLevelDimensions(int level)
        {
            EnsureNotDisposed();

            Interop.GetLevelDimensions(_handle, level, out long w, out long h);
            if (w == -1 || h == -1)
            {
                ThrowHelper.CheckAndThrowError(_handle);
            }
            return(new ImageDimensions(w, h));
        }
Beispiel #7
0
        public string?this[string name]
        {
            get
            {
                var handle = EnsureNotDisposed();

                string?value = OpenSlideInterop.GetPropertyValue(handle, name);
                ThrowHelper.CheckAndThrowError(handle);
                return(value);
            }
        }
 private void EnsureDimensionsCached()
 {
     if (_dimensionsCache == null)
     {
         Interop.GetLevel0Dimensions(_handle, out long w, out long h);
         if (w == -1 || h == -1)
         {
             ThrowHelper.CheckAndThrowError(_handle);
         }
         _dimensionsCache = new ImageDimensions(w, h);
     }
 }
        /// <summary>
        /// Get the downsample factor for level k of the slide.
        /// </summary>
        /// <param name="level">the k level</param>
        /// <returns>The downsample factor for level k of the slide.</returns>
        public double GetLevelDownsample(int level)
        {
            EnsureNotDisposed();

            double result = Interop.GetLevelDownsample(_handle, level);

            if (result == -1.0d)
            {
                ThrowHelper.CheckAndThrowError(_handle);
            }
            return(result);
        }
Beispiel #10
0
        private ImageDimensions EnsureDimensionsCached()
        {
            var handle = EnsureNotDisposed();

            if (_dimensionsCache == null)
            {
                OpenSlideInterop.GetLevel0Dimensions(handle, out long w, out long h);
                if (w == -1 || h == -1)
                {
                    ThrowHelper.CheckAndThrowError(handle);
                }
                var dimensions = new ImageDimensions(w, h);
                _dimensionsCache = dimensions;
                return(dimensions);
            }
            return(_dimensionsCache.GetValueOrDefault());;
        }
 private unsafe void ReadRegionInternal(int level, long x, long y, long width, long height, void *pointer)
 {
     Interop.ReadRegion(_handle, pointer, x, y, level, width, height);
     ThrowHelper.CheckAndThrowError(_handle);
 }
 private unsafe void ReadAssociatedImageInternal(string name, void *pointer)
 {
     Interop.ReadAssociatedImage(_handle, name, pointer);
     ThrowHelper.CheckAndThrowError(_handle);
 }