Click or drag to resize

ImageSource Class

An abstract class that is used to define a flexible mechanism for managing large quantities of images without having to keep them all in memory at once.
Inheritance Hierarchy
SystemObject
  Atalasoft.ImagingImageSource
    Atalasoft.ImagingRandomAccessImageSource

Namespace:  Atalasoft.Imaging
Assembly:  Atalasoft.dotImage (in Atalasoft.dotImage.dll) Version: 11.4.0.9.0.377 (.NET 4.5.2, x86)
Syntax
public abstract class ImageSource : IDisposable

The ImageSource type exposes the following members.

Constructors
  NameDescription
Protected methodImageSource
Initializes a new instance of the ImageSource class.
Top
Properties
  NameDescription
Protected propertyActiveImages
Gets the active images.
Protected propertyCulledImages
Gets the culled images.
Public propertyCurrent
Returns the index of the current image.
Public propertyImmediateUnload
Determines if an image should be unloaded from memory immediately.
Public propertyMemoryInUse
Returns an estimate of the number of bytes of memory currently in use by images in this ImageSource.
Public propertyMemoryLimit
This sets the limit for memory usage for this ImageSource. If memory usage goes beyond this, images will be dropped from memory until memory usage is below the limit.
Public propertyTotalImages
Returns the total number of available images in this ImageSource.
Public propertyTotalImagesKnown
Gets a value indicating whether or not the total number of images in this image source can be known.
Top
Methods
  NameDescription
Public methodAcquire(Int32) Obsolete.
This method has been deprecated. Use ReAcquire(AtalaImage) instead.
Public methodAcquire(AtalaImage) Obsolete.
This method has been deprecated. Use ReAcquire(AtalaImage) instead.
Public methodAcquireNext
Acquire the next available image from the ImageSource.
Protected methodAllImagesAreReleased
Determines if all the images have been released.
Public methodContainsImage
Determines whether this ImageSource contains the specified image.
Protected methodCullNode
Culls the node from the ImageSource
Protected methodCullReleasedImages
Culls all released images.
Public methodDispose
Free up resources used by this ImageSource
Protected methodDispose(Boolean)
Releases unmanaged and - optionally - managed resources.
Public methodEquals
Determines whether the specified object is equal to the current object.
(Inherited from Object.)
Protected methodFinalize
Finalizes an instance of the ImageSource class.
(Overrides ObjectFinalize.)
Protected methodFind
Finds the specified image.
Public methodFlush
Flush all released images out of memory.
Public methodGetHashCode
Serves as the default hash function.
(Inherited from Object.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodHasMoreImages
Determines if there are more images to load.
Protected methodLowLevelAcquireNextImage
Lows level implementation to acquire next image.
Protected methodLowLevelDispose
Lows level implementation to dispose the ImageSource.
Protected methodLowLevelFlushOnReset
Lows level implementation to determine if there should be a flush on reset.
Protected methodLowLevelHasMoreImages
Lows level implementation to determine if the ImageSource has more images.
Protected methodLowLevelReplaceImage
Lows level implementation to replace an image.
Protected methodLowLevelReset
Lows level implementation of reset.
Protected methodLowLevelSkipNextImage
Lows level implementation to skip next image.
Protected methodLowLevelTotalImages
Lows level implementation that returns the total number of images.
Protected methodLowLevelTotalImagesKnown
Lows level implemtation to return if the total number of images are known.
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Public methodNotifyChangedImage(AtalaImage)
This method is used to inform an ImageSource that one of its current acquired images has changed.
Public methodNotifyChangedImage(AtalaImage, AtalaImage)
This method is used to inform an ImageSource that one of its current acquired images has changed.
Protected methodOnChangedImage
Raises the [E:ChangedImage] event.
Protected methodOnReleasing
Called when Release(AtalaImage) was performed on an ImageSourceNode.
Public methodReAcquire(Int32)
Acquire a previous image by index.
Public methodReAcquire(AtalaImage)
Acquire an AtalaImage that has been previously acquired.
Public methodRelease
Release a previously acquired image.
Public methodReleaseChangedImage(AtalaImage)
Release an image that has changed, notifying other clients that the image has changed.
Public methodReleaseChangedImage(AtalaImage, AtalaImage)
Release an image that has changed, notifying other clients that the image has changed.
Public methodReset
Resets the ImageSource to start over again.
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Top
Events
  NameDescription
Public eventChangedImage
This event is fired whenever an image has been replaced.
Public eventReleasing
Raised when the Release(AtalaImage) method is called on an ImageSourceNode.
Top
Remarks
ImageSource objects are configurable for memory usage or for aggressive unloading of images and can be built with a cache to allow transient data sources such as live video to be treated as if they were persistent.
See Also