StreamingImageVolume
Hierarchy
- default
- StreamingImageVolume
Index
Constructors
Properties
Accessors
Methods
- callLoadImage
- cancelLoading
- clearLoadCallbacks
- convertToCornerstoneImage
- convertToImageSlicesAndCache
- decache
- destroy
- errorCallback
- getCornerstoneImage
- getCornerstoneImageLoadObject
- getCornerstoneImages
- getImageIdIndex
- getImageIdsToLoad
- getImageLoadRequests
- getImageURIIndex
- getLoaderImageOptions
- getScalarData
- getScalarDataArrays
- getScalarDataLength
- isDynamicVolume
- load
- loadImages
- modified
- removeFromCache
- successCallback
Constructors
constructor
Parameters
imageVolumeProperties: ImageVolumeProps
streamingProperties: IStreamingVolumeProperties
Returns default
Properties
optionaladditionalDetails
Property to store additional information
dimensions
Dimensions of the volume
direction
volume direction in world space
hasPixelSpacing
whether the metadata for the pixel spacing is not undefined
imageCacheOffsetMap
optionalimageData
volume image data
imagesLoader
isPreScaled
loadStatus
Type declaration
callbacks: (...args: unknown[]) => void[]
cancelled: boolean
loaded: boolean
loading: boolean
metadata
volume metadata
numVoxels
volume number of voxels
origin
volume origin, Note this is an opinionated origin for the volume
optionalreferencedImageIds
optional reference image ids if the volume is derived from a set of images in the image cache
optionalreferencedVolumeId
optional reference volume id if the volume is derived from another volume
optionalscaling
volume scaling parameters if it contains scaled data
Type declaration
optionalPT?: { SUVbsaFactor?: number; SUVlbmFactor?: number; suvbwToSuvbsa?: number; suvbwToSuvlbm?: number }
optionalSUVbsaFactor?: number
optionalSUVlbmFactor?: number
optionalsuvbwToSuvbsa?: number
optionalsuvbwToSuvlbm?: number
optionalsizeInBytes
volume size in bytes
spacing
volume spacing in 3d world space
readonlyvolumeId
Read-only unique identifier for the volume
vtkOpenGLTexture
open gl texture for the volume
Accessors
publicimageIds
return the image ids for the volume if it is made of separated images
Returns string[]
updates the image ids
Parameters
newImageIds: string[]
Returns void
Methods
callLoadImage
Parameters
imageId: any
imageIdIndex: any
options: any
Returns any
publiccancelLoading
It cancels loading the images of the volume. It sets the loading status to false and filters any imageLoad request in the requestPoolManager that has the same volumeId
Returns void
publicclearLoadCallbacks
Clear the load callbacks
Returns void
publicconvertToCornerstoneImage
Converts the requested imageId inside the volume to a cornerstoneImage object. It uses the typedArray set method to copy the pixelData from the correct offset in the scalarData to a new array for the image Duplicate of getCornerstoneImageLoadObject for legacy reasons
Parameters
imageId: string
the imageId of the image to be converted
imageIdIndex: number
the index of the imageId in the imageIds array
Returns IImageLoadObject
imageLoadObject containing the promise that resolves to the cornerstone image
publicconvertToImageSlicesAndCache
Converts all the volume images (imageIds) to cornerstoneImages and caches them. It iterates over all the imageIds and convert them until there is no enough space left inside the imageCache. Finally it will decache the Volume.
Returns string[]
publicdecache
If completelyRemove is true, remove the volume completely from the cache. Otherwise, convert the volume to cornerstone images (stack images) and store it in the cache
Parameters
completelyRemove: boolean = false
If true, the image will be removed from the cache completely.
Returns void | string[]
destroy
destroy the volume and make it unusable
Returns void
publicerrorCallback
Parameters
imageId: any
permanent: any
error: any
Returns void
publicgetCornerstoneImage
Converts the requested imageId inside the volume to a cornerstoneImage object. It uses the typedArray set method to copy the pixelData from the correct offset in the scalarData to a new array for the image
Parameters
imageId: string
the imageId of the image to be converted
imageIdIndex: number
the index of the imageId in the imageIds array
Returns IImage
image object containing the pixel data, metadata, and other information
publicgetCornerstoneImageLoadObject
Converts the requested imageId inside the volume to a cornerstoneImage object. It uses the typedArray set method to copy the pixelData from the correct offset in the scalarData to a new array for the image
Parameters
imageId: string
the imageId of the image to be converted
imageIdIndex: number
the index of the imageId in the imageIds array
Returns IImageLoadObject
imageLoadObject containing the promise that resolves to the cornerstone image
publicgetCornerstoneImages
Returns an array of all the volume’s images as Cornerstone images. It iterates over all the imageIds and converts them to Cornerstone images.
Returns IImage[]
An array of Cornerstone images.
publicgetImageIdIndex
return the index of a given imageId
Parameters
imageId: string
imageId
Returns number
imageId index
publicgetImageIdsToLoad
Returns string[]
publicgetImageLoadRequests
It returns the imageLoad requests for the streaming image volume instance. It involves getting all the imageIds of the volume and creating a success callback which would update the texture (when the image has loaded) and the failure callback. Note that this method does not executes the requests but only returns the requests. It can be used for sorting requests outside of the volume loader itself e.g. loading a single slice of CT, followed by a single slice of PET (interleaved), before moving to the next slice.
Parameters
priority: number
Returns default[]
Array of requests including imageId of the request, its imageIdIndex, options (targetBuffer and scaling parameters), and additionalDetails (volumeId)
publicgetImageURIIndex
return the index of a given imageURI
Parameters
imageURI: string
Returns number
imageURI index
publicgetLoaderImageOptions
Parameters
imageId: string
Returns { additionalDetails: { imageId: string; imageIdIndex: number; volumeId: string }; allowFloatRendering: boolean; loader: (imageId: string, options?: ImageLoaderOptions) => Promise<IImage>; preScale: { enabled: boolean; scalingParameters: ScalingParameters }; skipCreateImage: boolean; targetBuffer: { arrayBuffer: SharedArrayBuffer; columns: any; length: number; offset: number; rows: any; type: any }; transferPixelData: boolean; transferSyntaxUID: any }
additionalDetails: { imageId: string; imageIdIndex: number; volumeId: string }
imageId: string
imageIdIndex: number
volumeId: string
allowFloatRendering: boolean
loader: (imageId: string, options?: ImageLoaderOptions) => Promise<IImage>
Loads an image given an imageId and optional priority and returns a promise which will resolve to the loaded image object or fail if an error occurred. The loaded image is not stored in the cache.
Parameters
imageId: string
A Cornerstone Image Object’s imageId
options: ImageLoaderOptions = ...
Options to be passed to the Image Loader
Returns Promise<IImage>
An Object which can be used to act after an image is loaded or loading fails
preScale: { enabled: boolean; scalingParameters: ScalingParameters }
enabled: boolean
scalingParameters: ScalingParameters
skipCreateImage: boolean
targetBuffer: { arrayBuffer: SharedArrayBuffer; columns: any; length: number; offset: number; rows: any; type: any }
arrayBuffer: SharedArrayBuffer
columns: any
length: number
offset: number
rows: any
type: any
transferPixelData: boolean
transferSyntaxUID: any
publicgetScalarData
Return the scalar data (buffer)
Returns PixelDataTypedArray
volume scalar data
publicgetScalarDataArrays
Return all scalar data objects (buffers) which will be only one for 3D volumes and one per time point for 4D volumes images of each 3D volume is stored
Returns PixelDataTypedArray[]
scalar data array
publicgetScalarDataLength
Returns number
publicisDynamicVolume
return true if it is a 4D volume or false if it is 3D volume
Returns boolean
publicload
It triggers a prefetch for images in the volume.
Parameters
callback: (...args: unknown[]) => void
A callback function to be called when the volume is fully loaded
Returns void
publicloadImages
Retrieves images using the older getImageLoadRequests method to setup all the requests. Ensures compatibility with the custom image loaders.
Parameters
imageIds: string[]
listener: ImageLoadListener
Returns Promise<boolean>
publicmodified
Updates the internals of the volume to reflect the changes in the underlying scalar data. This should be called when the scalar data is modified externally
Returns void
publicremoveFromCache
Returns void
publicsuccessCallback
Parameters
imageId: string
image: any
Returns void
Streaming Image Volume Class that extends ImageVolume base class. It implements load method to load the imageIds and insert them into the volume.