Class: StreamingImageVolume
Streaming Image Volume Class that extends ImageVolume base class. It implements load method to load the imageIds and insert them into the volume.
Extends
BaseStreamingImageVolume
Constructors
new StreamingImageVolume()
new StreamingImageVolume(
imageVolumeProperties,streamingProperties):StreamingImageVolume
Parameters
• imageVolumeProperties: ImageVolumeProps
• streamingProperties: IStreamingVolumeProperties
Returns
Overrides
BaseStreamingImageVolume.constructor
Defined in
packages/core/src/cache/classes/StreamingImageVolume.ts:14
Properties
additionalDetails?
optionaladditionalDetails:Record<string,unknown>
Property to store additional information
Inherited from
BaseStreamingImageVolume.additionalDetails
Defined in
packages/core/src/cache/classes/ImageVolume.ts:143
autoRenderOnLoad
protectedautoRenderOnLoad:boolean=true
Inherited from
BaseStreamingImageVolume.autoRenderOnLoad
Defined in
packages/core/src/cache/classes/BaseStreamingImageVolume.ts:48
cachedFrames
protectedcachedFrames:any[] =[]
Inherited from
BaseStreamingImageVolume.cachedFrames
Defined in
packages/core/src/cache/classes/BaseStreamingImageVolume.ts:49
cornerstoneImageMetaData
protectedcornerstoneImageMetaData:any=null
Inherited from
BaseStreamingImageVolume.cornerstoneImageMetaData
Defined in
packages/core/src/cache/classes/ImageVolume.ts:101
dataType?
optionaldataType:PixelDataTypedArrayString
Inherited from
BaseStreamingImageVolume.dataType
Defined in
packages/core/src/cache/classes/ImageVolume.ts:156
dimensions
dimensions:
Point3
Dimensions of the volume
Inherited from
BaseStreamingImageVolume.dimensions
Defined in
packages/core/src/cache/classes/ImageVolume.ts:109
direction
direction:
Mat3
volume direction in world space
Inherited from
BaseStreamingImageVolume.direction
Defined in
packages/core/src/cache/classes/ImageVolume.ts:111
hasPixelSpacing
hasPixelSpacing:
boolean
whether the metadata for the pixel spacing is not undefined
Inherited from
BaseStreamingImageVolume.hasPixelSpacing
Defined in
packages/core/src/cache/classes/ImageVolume.ts:141
imageData?
optionalimageData:vtkImageData
volume image data
Inherited from
BaseStreamingImageVolume.imageData
Defined in
packages/core/src/cache/classes/ImageVolume.ts:133
imagesLoader
imagesLoader:
IImagesLoader
Inherited from
BaseStreamingImageVolume.imagesLoader
Defined in
packages/core/src/cache/classes/BaseStreamingImageVolume.ts:63
isPreScaled
isPreScaled:
boolean=false
Inherited from
BaseStreamingImageVolume.isPreScaled
Defined in
packages/core/src/cache/classes/ImageVolume.ts:106
loadStatus
loadStatus:
object
load status object for the volume
callbacks
callbacks: (...
args) =>void[]
cancelled
cancelled:
boolean
loaded
loaded:
boolean
loading
loading:
boolean
Inherited from
BaseStreamingImageVolume.loadStatus
Defined in
packages/core/src/cache/classes/BaseStreamingImageVolume.ts:57
metadata
metadata:
Metadata
volume metadata
Inherited from
BaseStreamingImageVolume.metadata
Defined in
packages/core/src/cache/classes/ImageVolume.ts:113
numDimensionGroups
numDimensionGroups:
number
Property to store the number of dimension groups.
Deprecated
Inherited from
BaseStreamingImageVolume.numDimensionGroups
Defined in
packages/core/src/cache/classes/ImageVolume.ts:149
numFrames
numFrames:
number
Inherited from
BaseStreamingImageVolume.numFrames
Defined in
packages/core/src/cache/classes/ImageVolume.ts:177
numVoxels
numVoxels:
number
volume number of voxels
Inherited from
BaseStreamingImageVolume.numVoxels
Defined in
packages/core/src/cache/classes/ImageVolume.ts:131
origin
origin:
Point3
volume origin, Note this is an opinionated origin for the volume
Inherited from
BaseStreamingImageVolume.origin
Defined in
packages/core/src/cache/classes/ImageVolume.ts:115
referencedImageIds?
optionalreferencedImageIds:string[]
optional reference image ids if the volume is derived from a set of images in the image cache
Inherited from
BaseStreamingImageVolume.referencedImageIds
Defined in
packages/core/src/cache/classes/ImageVolume.ts:139
referencedVolumeId?
optionalreferencedVolumeId:string
optional reference volume id if the volume is derived from another volume
Inherited from
BaseStreamingImageVolume.referencedVolumeId
Defined in
packages/core/src/cache/classes/ImageVolume.ts:137
reRenderFraction
protectedreRenderFraction:number=2
Inherited from
BaseStreamingImageVolume.reRenderFraction
Defined in
packages/core/src/cache/classes/BaseStreamingImageVolume.ts:51
reRenderTarget
protectedreRenderTarget:number=0
Inherited from
BaseStreamingImageVolume.reRenderTarget
Defined in
packages/core/src/cache/classes/BaseStreamingImageVolume.ts:50
scaling?
optionalscaling:object
volume scaling parameters if it contains scaled data
PT?
optionalPT:object
PT.SUVbsaFactor?
optionalSUVbsaFactor:number
PT.suvbwToSuvbsa?
optionalsuvbwToSuvbsa:number
PT.suvbwToSuvlbm?
optionalsuvbwToSuvlbm:number
PT.SUVlbmFactor?
optionalSUVlbmFactor:number
Inherited from
BaseStreamingImageVolume.scaling
Defined in
packages/core/src/cache/classes/ImageVolume.ts:118
spacing
spacing:
Point3
volume spacing in 3d world space
Inherited from
BaseStreamingImageVolume.spacing
Defined in
packages/core/src/cache/classes/ImageVolume.ts:129
suppressWarnings
suppressWarnings:
boolean
Inherited from
BaseStreamingImageVolume.suppressWarnings
Defined in
packages/core/src/cache/classes/ImageVolume.ts:178
totalNumFrames
protectedtotalNumFrames:number
volume scalar data 3D or 4D
Inherited from
BaseStreamingImageVolume.totalNumFrames
Defined in
packages/core/src/cache/classes/ImageVolume.ts:100
volumeId
readonlyvolumeId:string
Read-only unique identifier for the volume
Inherited from
BaseStreamingImageVolume.volumeId
Defined in
packages/core/src/cache/classes/ImageVolume.ts:104
voxelManager?
optionalvoxelManager:IVoxelManager<number> |IVoxelManager<RGB>
The new volume model which solely relies on the separate image data and do not cache the volume data at all
Inherited from
BaseStreamingImageVolume.voxelManager
Defined in
packages/core/src/cache/classes/ImageVolume.ts:155
Accessors
compositeVoxelManager
getcompositeVoxelManager():CompositeVoxelManager<number|RGB>
Returns
CompositeVoxelManager<number | RGB>
Inherited from
BaseStreamingImageVolume.compositeVoxelManager
Defined in
packages/core/src/cache/classes/ImageVolume.ts:413
imageIds
getimageIds():string[]
return the image ids for the volume if it is made of separated images
setimageIds(newImageIds):void
updates the image ids
Parameters
• newImageIds: string[]
Returns
string[]
Inherited from
BaseStreamingImageVolume.imageIds
Defined in
packages/core/src/cache/classes/ImageVolume.ts:794
numTimePoints
getnumTimePoints():number
Calculates the number of time points to be the number of dimension groups as a fallback for existing handling.
Deprecated
Returns
number
Inherited from
BaseStreamingImageVolume.numTimePoints
Defined in
packages/core/src/cache/classes/ImageVolume.ts:172
reductionStatistic
getreductionStatistic():VoxelStatistic
Statistic used when this volume must be reduced to fit a GPU texture. Intensity volumes use average. Labelmaps use foregroundMajority. Defaults to average.
setreductionStatistic(statistic):void
Set it before a render path provisions a texture. A derived representation keeps the statistic it was built with, but a reduced texture refills each dirty slice with the statistic of the volume at that time, so a later change mixes two statistics in one texture.
Parameters
• statistic: VoxelStatistic
Returns
Inherited from
BaseStreamingImageVolume.reductionStatistic
Defined in
packages/core/src/cache/classes/ImageVolume.ts:364
sizeInBytes
getsizeInBytes():number
Returns
number
Inherited from
BaseStreamingImageVolume.sizeInBytes
Defined in
packages/core/src/cache/classes/ImageVolume.ts:288
textureSets
gettextureSets():VolumeTextureSet<vtkStreamingOpenGLTexture>[]
The named texture sets of this volume, which the global store holds.
Returns
VolumeTextureSet<vtkStreamingOpenGLTexture>[]
Inherited from
BaseStreamingImageVolume.textureSets
Defined in
packages/core/src/cache/classes/ImageVolume.ts:596
voxelGrid
getvoxelGrid():VoxelGrid
The grid descriptor of the data of this volume.
The grid states the origin, the direction, the spacing and the dimensions that the volume already holds, and it states nothing else. There is no level index: the grid of this volume is the primary representation of the composite, and it carries no ordinal that would make it "level 0".
Each call gives a new record, and the record holds a copy of each array, so
a consumer that stores the grid is not exposed to a later change of
this.origin or of this.dimensions.
Returns
Inherited from
BaseStreamingImageVolume.voxelGrid
Defined in
packages/core/src/cache/classes/ImageVolume.ts:319
vtkOpenGLTexture
getvtkOpenGLTexture():vtkStreamingOpenGLTexture
The texture of the full-resolution grid, and not every texture of the
volume. The volume holds named sets of textures, and this member names the
one member of the set full-resolution/full-extent.
The value follows the store. It is undefined until something provisions
that set, and it returns to undefined when the store evicts that set. A
render path that draws a reduced grid reads a different set, and this value
stays undefined.
Returns
vtkStreamingOpenGLTexture
Inherited from
BaseStreamingImageVolume.vtkOpenGLTexture
Defined in
packages/core/src/cache/classes/ImageVolume.ts:704
textureBudget
getstatictextureBudget():number
The number of bytes that the textures of every volume may take.
Returns
number
Inherited from
BaseStreamingImageVolume.textureBudget
Defined in
packages/core/src/cache/classes/ImageVolume.ts:577
textureBytesUsed
getstatictextureBytesUsed():number
The number of bytes that the textures of every volume take.
Returns
number
Inherited from
BaseStreamingImageVolume.textureBytesUsed
Defined in
packages/core/src/cache/classes/ImageVolume.ts:572
Methods
callLoadImage()
callLoadImage(
imageId,imageIdIndex,options):any
Parameters
• imageId: any
• imageIdIndex: any
• options: any
Returns
any
Inherited from
BaseStreamingImageVolume.callLoadImage
Defined in
packages/core/src/cache/classes/BaseStreamingImageVolume.ts:666
callLoadStatusCallback()
protectedcallLoadStatusCallback(evt):void
Parameters
• evt: any
Returns
void
Inherited from
BaseStreamingImageVolume.callLoadStatusCallback
Defined in
packages/core/src/cache/classes/BaseStreamingImageVolume.ts:142
cancelLoading()
cancelLoading():
void
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
Inherited from
BaseStreamingImageVolume.cancelLoading
Defined in
packages/core/src/cache/classes/BaseStreamingImageVolume.ts:108
checkDimensionGroupCompletion()
protectedcheckDimensionGroupCompletion(imageIdIndex):void
Parameters
• imageIdIndex: number
Returns
void
Inherited from
BaseStreamingImageVolume.checkDimensionGroupCompletion
Defined in
packages/core/src/cache/classes/BaseStreamingImageVolume.ts:848
claimTextureSet()
claimTextureSet(
name):boolean
Adds one holder of a named set, so an eviction cannot take it.
Parameters
• name: string
Returns
boolean
Inherited from
BaseStreamingImageVolume.claimTextureSet
Defined in
packages/core/src/cache/classes/ImageVolume.ts:656
clearLoadCallbacks()
clearLoadCallbacks():
void
Clear the load callbacks
Returns
void
Inherited from
BaseStreamingImageVolume.clearLoadCallbacks
Defined in
packages/core/src/cache/classes/BaseStreamingImageVolume.ts:138
createVoxelRepresentation()
createVoxelRepresentation(
options):VoxelRepresentation<number|RGB>
Derives a new representation from the data that the volume already holds, and adds that representation to the composite.
A derivation always goes from a higher resolution to a lower one. Data that
no derivation can give arrives through compositeVoxelManager.acceptData,
which is the member that a loader calls.
Parameters
• options: CreateVoxelRepresentationOptions
Returns
VoxelRepresentation<number | RGB>
Inherited from
BaseStreamingImageVolume.createVoxelRepresentation
Defined in
packages/core/src/cache/classes/ImageVolume.ts:525
deliveredRegions()
protecteddeliveredRegions():DeliveredRegion[]
The frames of this volume that the loader has already delivered.
cachedFrames is the record of the quality of each frame, so this member
states each loaded frame as one region of one k slice. A volume that has
loaded nothing states an empty list, which tells a derivation that no
source voxel holds a value yet.
Returns
Inherited from
BaseStreamingImageVolume.deliveredRegions
Defined in
packages/core/src/cache/classes/BaseStreamingImageVolume.ts:538
destroy()
destroy():
void
destroy the volume and make it unusable
Returns
void
Inherited from
BaseStreamingImageVolume.destroy
Defined in
packages/core/src/cache/classes/BaseStreamingImageVolume.ts:521
errorCallback()
errorCallback(
imageId,permanent,error):void
Parameters
• imageId: any
• permanent: any
• error: any
Returns
void
Inherited from
BaseStreamingImageVolume.errorCallback
Defined in
packages/core/src/cache/classes/BaseStreamingImageVolume.ts:335
getCornerstoneImages()
getCornerstoneImages():
IImage[]
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.
Inherited from
BaseStreamingImageVolume.getCornerstoneImages
Defined in
packages/core/src/cache/classes/ImageVolume.ts:924
getFullResolutionTexture()
getFullResolutionTexture():
vtkStreamingOpenGLTexture
The texture of the full-resolution grid. The member provisions the set
named full-resolution/full-extent when the store does not hold it.
Returns
vtkStreamingOpenGLTexture
the texture, or undefined when the store refuses it
Inherited from
BaseStreamingImageVolume.getFullResolutionTexture
Defined in
packages/core/src/cache/classes/ImageVolume.ts:679
getGridQuality()
getGridQuality(
grid,statistic?):VoxelQualityRecord
The record of the data that a texture of one grid holds. A render path reads it for the grid that it bound. A reduced texture fills by box average straight from the source, so no representation of its grid needs to exist.
Parameters
• grid: VoxelGrid
• statistic?: VoxelStatistic
Returns
Inherited from
BaseStreamingImageVolume.getGridQuality
Defined in
packages/core/src/cache/classes/ImageVolume.ts:551
getImageIdByIndex()
getImageIdByIndex(
imageIdIndex):string
Parameters
• imageIdIndex: number
Returns
string
Inherited from
BaseStreamingImageVolume.getImageIdByIndex
Defined in
packages/core/src/cache/classes/ImageVolume.ts:836
getImageIdIndex()
getImageIdIndex(
imageId):number
return the index of a given imageId
Parameters
• imageId: string
imageId
Returns
number
imageId index
Inherited from
BaseStreamingImageVolume.getImageIdIndex
Defined in
packages/core/src/cache/classes/ImageVolume.ts:832
getImageIdsRequests()
protectedgetImageIdsRequests(imageIds,priorityDefault):object[]
Parameters
• imageIds: string[]
• priorityDefault: number
Returns
object[]
Inherited from
BaseStreamingImageVolume.getImageIdsRequests
Defined in
packages/core/src/cache/classes/BaseStreamingImageVolume.ts:692
getImageIdsToLoad()
getImageIdsToLoad():
string[]
Returns
string[]
Overrides
BaseStreamingImageVolume.getImageIdsToLoad
Defined in
packages/core/src/cache/classes/StreamingImageVolume.ts:51
getImageLoadRequests()
getImageLoadRequests(
priority):ImageLoadRequests[]
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
Array of requests including imageId of the request, its imageIdIndex, options (targetBuffer and scaling parameters), and additionalDetails (volumeId)
Overrides
BaseStreamingImageVolume.getImageLoadRequests
Defined in
packages/core/src/cache/classes/StreamingImageVolume.ts:45
getImageQuality()
getImageQuality(
imageIdIndex):ImageQualityStatus
The quality of the data that the image of one image id index holds. A volume that does not stream holds every image at full resolution, and a streaming volume states the quality that each delivery recorded.
Parameters
• imageIdIndex: number
Returns
the quality, or undefined when no data of the image has arrived
Inherited from
BaseStreamingImageVolume.getImageQuality
Defined in
packages/core/src/cache/classes/BaseStreamingImageVolume.ts:526
getImageURIIndex()
getImageURIIndex(
imageURI):number
return the index of a given imageURI
Parameters
• imageURI: string
Returns
number
imageURI index
Inherited from
BaseStreamingImageVolume.getImageURIIndex
Defined in
packages/core/src/cache/classes/ImageVolume.ts:845
getLoaderImageOptions()
getLoaderImageOptions(
imageId):object
Parameters
• imageId: string
Returns
object
additionalDetails
additionalDetails:
object
additionalDetails.imageId
imageId:
string
additionalDetails.imageIdIndex
imageIdIndex:
number
additionalDetails.volumeId
volumeId:
string
allowFloatRendering
allowFloatRendering:
boolean
preScale
preScale:
object
preScale.enabled
enabled:
boolean
preScale.scalingParameters
scalingParameters:
ScalingParameters
requestType
requestType:
RequestType=requestTypeDefault
retrieveOptions
retrieveOptions:
any=undefined
targetBuffer
targetBuffer:
object
targetBuffer.type
transferPixelData
transferPixelData:
boolean=true
transferSyntaxUID
transferSyntaxUID:
any
Inherited from
BaseStreamingImageVolume.getLoaderImageOptions
Defined in
packages/core/src/cache/classes/BaseStreamingImageVolume.ts:564
getScalarData()
getScalarData():
PixelDataTypedArray
Return the scalar data (buffer)
Returns
volume scalar data
Defined in
packages/core/src/cache/classes/StreamingImageVolume.ts:29
getScalarDataLength()
getScalarDataLength():
number
Returns
number
Inherited from
BaseStreamingImageVolume.getScalarDataLength
Defined in
packages/core/src/cache/classes/ImageVolume.ts:892
getTextureSet()
getTextureSet(
name):VolumeTextureSet<vtkStreamingOpenGLTexture>
One named texture set of this volume.
Parameters
• name: string
Returns
VolumeTextureSet<vtkStreamingOpenGLTexture>
Inherited from
BaseStreamingImageVolume.getTextureSet
Defined in
packages/core/src/cache/classes/ImageVolume.ts:603
getVoxelQuality()
getVoxelQuality(
selector):VoxelQualityRecord
The absolute record of the data that a reader would get for a region, under the same three inputs that the selection takes.
The record states no verdict. A reader compares it against its own
requirement with compareVoxelQuality, so two viewports over one volume
can report a different verdict at the same moment.
Parameters
• selector: VoxelRepresentationSelector = {}
Returns
Inherited from
BaseStreamingImageVolume.getVoxelQuality
Defined in
packages/core/src/cache/classes/ImageVolume.ts:539
getVoxelRepresentations()
getVoxelRepresentations():
VoxelRepresentation<number|RGB>[]
Every representation of the voxel data, the primary one included.
Many representations can exist at one resolution, each one covering a different part of the volume, because a set of bricks is exactly that. A caller must not assume one representation for each spacing.
Returns
VoxelRepresentation<number | RGB>[]
Inherited from
BaseStreamingImageVolume.getVoxelRepresentations
Defined in
packages/core/src/cache/classes/ImageVolume.ts:498
imageIdIndexToFrameIndex()
protectedimageIdIndexToFrameIndex(imageIdIndex):number
Converts imageIdIndex into frameIndex which will be the same for 3D volumes but different for 4D volumes. The indices are 0 based.
Parameters
• imageIdIndex: number
Returns
number
Inherited from
BaseStreamingImageVolume.imageIdIndexToFrameIndex
Defined in
packages/core/src/cache/classes/ImageVolume.ts:914
invalidate()
invalidate():
void
Returns
void
Inherited from
BaseStreamingImageVolume.invalidate
Defined in
packages/core/src/cache/classes/ImageVolume.ts:870
invalidateVolume()
protectedinvalidateVolume(immediate):void
Parameters
• immediate: boolean
Returns
void
Inherited from
BaseStreamingImageVolume.invalidateVolume
Defined in
packages/core/src/cache/classes/BaseStreamingImageVolume.ts:81
isDynamicVolume()
isDynamicVolume():
boolean
return true if it is a 4D volume or false if it is 3D volume
Returns
boolean
Inherited from
BaseStreamingImageVolume.isDynamicVolume
Defined in
packages/core/src/cache/classes/ImageVolume.ts:819
isInCurrentDimensionGroup()
protectedisInCurrentDimensionGroup(_imageIdIndex):boolean
Whether an image belongs to the dimension group that the grid shows. A volume of one group holds every image in that group.
Parameters
• _imageIdIndex: number
Returns
boolean
Inherited from
BaseStreamingImageVolume.isInCurrentDimensionGroup
Defined in
packages/core/src/cache/classes/BaseStreamingImageVolume.ts:77
isLoadingProgressively()
isLoadingProgressively():
boolean
Whether this volume loads now through a retrieve configuration, such as the interleaved stages. Such a load orders its own requests, so a stack prefetch of the same images competes with it and must stay out.
Returns
boolean
Inherited from
BaseStreamingImageVolume.isLoadingProgressively
Defined in
packages/core/src/cache/classes/BaseStreamingImageVolume.ts:500
listenForCachedImages()
protectedlistenForCachedImages():void
Marks a frame when the image of that frame reaches the cache.
This volume reads the voxels of a frame from the image of the cache, and the image reaches the cache after the loader delivers it. A mark that runs before the image arrives reads nothing, and nothing marks the frame again, so the frame keeps whatever it held: it stays empty, or it keeps the replicate of a neighbour that a progressive loader put there first. A sagittal or a coronal view then shows a black line, or a block of one frame repeated.
cache.setPartialImage, which is how a replicate reaches the cache, sends
no event, so this member hears the arrival of real images only. The
delivery path marks the frame for a replicate.
Returns
void
Inherited from
BaseStreamingImageVolume.listenForCachedImages
Defined in
packages/core/src/cache/classes/BaseStreamingImageVolume.ts:258
load()
load(
callback):void
It triggers a prefetch for images in the volume.
Parameters
• callback
A callback function to be called when the volume is fully loaded
Returns
void
Inherited from
BaseStreamingImageVolume.load
Defined in
packages/core/src/cache/classes/BaseStreamingImageVolume.ts:379
loadImages()
loadImages():
Promise<boolean>
Retrieves images using the older getImageLoadRequests method to setup all the requests. Ensures compatibility with the custom image loaders.
Returns
Promise<boolean>
Inherited from
BaseStreamingImageVolume.loadImages
Defined in
packages/core/src/cache/classes/BaseStreamingImageVolume.ts:770
markAllTexturesDirty()
markAllTexturesDirty():
void
Marks every voxel of every texture of every set for a refill.
Returns
void
Inherited from
BaseStreamingImageVolume.markAllTexturesDirty
Defined in
packages/core/src/cache/classes/ImageVolume.ts:774
markFrameModified()
markFrameModified(
frameIndex):void
Takes a change of the voxels of one frame at an unchanged quality.
An edit of a labelmap, or a computed volume that writes new values, is such a change. The member redoes the derived boxes of the frame, whatever the record of earlier refreshes states, and it marks the textures.
Parameters
• frameIndex: number
Returns
void
Inherited from
BaseStreamingImageVolume.markFrameModified
Defined in
packages/core/src/cache/classes/ImageVolume.ts:765
markFrameTexturesDirty()
markFrameTexturesDirty(
frameIndex):void
Marks one frame for a refill in every texture of every set whose grid covers the frame. The member records no quality and redoes no derived box.
One frame changes several textures, because each texture that covers the frame reads the same voxels, and MR-API-IV-6 states that rule. A mark uploads nothing: the refill happens at the next render of each texture.
Parameters
• frameIndex: number
Returns
void
Inherited from
BaseStreamingImageVolume.markFrameTexturesDirty
Defined in
packages/core/src/cache/classes/ImageVolume.ts:720
modified()
modified():
void
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
Inherited from
BaseStreamingImageVolume.modified
Defined in
packages/core/src/cache/classes/ImageVolume.ts:881
pinTextureSet()
pinTextureSet(
name):boolean
Keeps a named set until this volume leaves the cache, whatever the budget. A legacy viewport draws a set that it holds no claim on, so it pins it.
Parameters
• name: string
Returns
boolean
Inherited from
BaseStreamingImageVolume.pinTextureSet
Defined in
packages/core/src/cache/classes/ImageVolume.ts:664
provisionTextureSet()
provisionTextureSet(
options):VolumeTextureSet<vtkStreamingOpenGLTexture>
Provisions a named texture set. This is the expensive step: it counts the cost, evicts if it must, and allocates the textures.
A set of this name that already exists comes back as it is, so a caller may ask without a test of its own.
ownerId gives a set of slabs that re-point, and exactly one owner holds
such a set, because the owner is the only party that knows when a draw
starts and stops.
Parameters
• options: VolumeProvisionTextureSetOptions
Returns
VolumeTextureSet<vtkStreamingOpenGLTexture>
the set, or undefined when the store refuses it
Inherited from
BaseStreamingImageVolume.provisionTextureSet
Defined in
packages/core/src/cache/classes/ImageVolume.ts:625
recordFrameDelivery()
recordFrameDelivery(
frameIndex,quality):void
Records that the data of one frame arrived at a known quality.
The composite records the delivery, and it redoes the boxes of every derived representation that the frame changed, because a derivation must follow the load. A second record of the same frame at the same quality redoes nothing. Only a caller that knows the quality of the data calls this member, because a lower record never replaces a higher one.
The member marks no texture. A loader calls markFrameTexturesDirty too.
Parameters
• frameIndex: number
• quality: ImageQualityStatus
the quality of the data that arrived
Returns
void
Inherited from
BaseStreamingImageVolume.recordFrameDelivery
Defined in
packages/core/src/cache/classes/ImageVolume.ts:744
releaseTextureSet()
releaseTextureSet(
name):boolean
Gives one holder of a named set back.
Parameters
• name: string
Returns
boolean
Inherited from
BaseStreamingImageVolume.releaseTextureSet
Defined in
packages/core/src/cache/classes/ImageVolume.ts:669
removeFromCache()
removeFromCache():
void
Returns
void
Inherited from
BaseStreamingImageVolume.removeFromCache
Defined in
packages/core/src/cache/classes/ImageVolume.ts:888
removeOtherPrefetchRequests()
protectedremoveOtherPrefetchRequests():void
Removes the queued prefetch requests of another loader for the images of this volume. A stack prefetch queued before a switch to a volume layout otherwise loads the whole series from the top down, and it takes more request slots than the stages of this volume.
Returns
void
Inherited from
BaseStreamingImageVolume.removeOtherPrefetchRequests
Defined in
packages/core/src/cache/classes/BaseStreamingImageVolume.ts:510
resetCompositeVoxelManager()
protectedresetCompositeVoxelManager():void
Discards the composite, so that the next read builds it again from
deliveredRegions. A caller that replaces every voxel of the volume calls
this member, because each record and each derived representation then
describes data that the volume no longer holds.
Returns
void
Inherited from
BaseStreamingImageVolume.resetCompositeVoxelManager
Defined in
packages/core/src/cache/classes/ImageVolume.ts:408
selectVoxelRepresentation()
selectVoxelRepresentation(
selector):VoxelRepresentation<number|RGB>
The representation that a reader gets for a region, at a statistic, under a ceiling. The ceiling is the resolution that the caller will use, so a render path that fills a texture at one eighth passes the spacing of that texture, and the selection does not return the full-resolution data.
The selection never creates. createVoxelRepresentation creates, and the
caller decides whether a new representation is worth its cost.
Parameters
• selector: VoxelRepresentationSelector = {}
Returns
VoxelRepresentation<number | RGB>
Inherited from
BaseStreamingImageVolume.selectVoxelRepresentation
Defined in
packages/core/src/cache/classes/ImageVolume.ts:511
stopListeningForCachedImages()
protectedstopListeningForCachedImages():void
Stops the volume listening for the images that reach the cache.
Returns
void
Inherited from
BaseStreamingImageVolume.stopListeningForCachedImages
Defined in
packages/core/src/cache/classes/BaseStreamingImageVolume.ts:296
successCallback()
successCallback(
imageId,image):void
Parameters
• imageId: string
• image: any
Returns
void
Inherited from
BaseStreamingImageVolume.successCallback
Defined in
packages/core/src/cache/classes/BaseStreamingImageVolume.ts:308
takeInCachedImages()
protectedtakeInCachedImages():void
Delivers the images of this volume that the cache already holds, such as the images that a stack viewport loaded before a switch to MPR.
Without this, the volume learns of such an image only when its own stage requests it, and a nearby fill skips the frame because the cache already holds a better image, so the frame stays empty until a late stage.
The deliveries run in batches of at most 8 ms, and a later task runs the
next batch, so a volume whose images are all cached does not stall. A
delivery only marks texture slices, and each render fills them under the
budget of rendering.reducedTextureFill. A cancelled or a restarted load
stops the batches.
Returns
void
Inherited from
BaseStreamingImageVolume.takeInCachedImages
Defined in
packages/core/src/cache/classes/BaseStreamingImageVolume.ts:450
updateTextureAndTriggerEvents()
protectedupdateTextureAndTriggerEvents(imageIdIndex,imageId,imageQualityStatus):void
Parameters
• imageIdIndex: any
• imageId: any
• imageQualityStatus: ImageQualityStatus = ImageQualityStatus.FULL_RESOLUTION
Returns
void
Inherited from
BaseStreamingImageVolume.updateTextureAndTriggerEvents
Defined in
packages/core/src/cache/classes/BaseStreamingImageVolume.ts:174
clearTextureSets()
staticclearTextureSets():void
Removes every texture set of every volume.
Returns
void
Inherited from
BaseStreamingImageVolume.clearTextureSets
Defined in
packages/core/src/cache/classes/ImageVolume.ts:591
setTextureBudget()
staticsetTextureBudget(bytes):void
States the budget of the texture memory of every volume. An application states it from a capability profile, and a budget that nobody states is no limit, so the behaviour of a viewport does not change.
Parameters
• bytes: number
Returns
void
Inherited from
BaseStreamingImageVolume.setTextureBudget