Click or drag to resize
SoLDMTileManager Class
Inheritance Hierarchy

Namespace: OIV.LDM
Assembly: OIV.LDM (in OIV.LDM.dll) Version: 9.9.13.0 (9.9.13.0)
Syntax
public class SoLDMTileManager : SoLDMLargeDataManagement

The SoLDMTileManager type exposes the following members.

Methods
  NameDescription
Public methodCheckResidencyAndUpdateWeight
Returns whether the input tile resides in memory and update its weight. Called when the tile visitor evaluates the topology. The input weight is an indication of how VolumeViz prioritize data for the current scene state. Tiles of higher weight should arrive in memory first. Note that the root tile must always resides in memory.
Public methodEndNumDataNotify(Boolean, Boolean)
Public methodEndNumDataNotify(Boolean, Boolean, Boolean)
Public methodEndTransaction
Notify a transaction has ended.
Public methodEquals
Determines whether the specified Object is equal to the current Object.
(Inherited from Object.)
Public methodFlushTilesOfRes
Flush tiles of a given resolution from memory pool. Called only if the fixedResolution LDM mode is ON or if the maximum resolution threshold changes (See LDMResourceParameter).
Public methodGetHashCode
Overrides GetHashCode().
(Inherited from SoNetBase.)
Public methodGetLdmSliceAccessor
Return an instance of slice accessor handling the data corresponding to the given volume id. Called when rendering an SoOrthoSlice. When subclassing from the tile manager there is no immediate need to redefine the functions of the slice accessor. VolumeViz already handles the extraction of the buffer from the 3D tile. One can simply use the LDMDefaultSliceAccessor.
Public methodGetMemoryUsed
This function is only used if in multiple data mode. There was a scene graph change in multiple data mode and only one tile manager must remain for all volume data involved. VolumeViz will keep the one that has loaded the more data.
Public methodGetMinMax
Gets minimun and maximum value of a tile data. The returned value indicates whether it has been calculated yet or in other words, if the tile was ever loaded. Only called if ignoring the fully transparent tiles (see SoVolumeRendering).
Public methodGetTile
Gets the data buffer associated with a tile for a given volume. VolumeViz expects the data to be stored as a stack of slices along the Z Inventor axis. Called after texture front evaluation. Only called on tiles that the tile manager declared as resident in memory. The input tileID has been called previously by the IsInMemory function and the answer was true.
Public methodGetTileData(Queue, Int32*, UInt16) Obsolete.
Public methodGetTileData(Queue, Int32*, UInt16, SoLDMDataAccess)
This function must ensure that all the data associated with the input set of tiles is loaded in main memory when returning. The data associated to a given tileID must be locked in memory until ReleaseTileData is called. Called when using the data access functions (GetData) from the LDMDataAccess (see SoVolumeData).
Public methodGetTileDimension
Get Tile dimension. For the default topology (octree) this function should always return the same size.
Public methodGetTileExt
This function must return the data associated to the given tileID and volumeDataId but it must be stored as a stack of slice along the X Inventor axis. Only called if the useExtendedData flag from SoVolumeData is TRUE. Allows equalizing performances of axis aligned slice roaming through a volume.
Public methodGetTileIDInMemory
Debug purpose only. Used for visual feedback to highlight tiles in main memory. Only called if the SoVolumeRendering.DRAW_TOPOLOGY flag is true.
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodInit
Function of initialization.
Public methodIsDataInMemory
Indicates whether the data attached to a tile is in main memory. Called when the node front manager evaluates the texture front. This allow to manage data that implement SoBufferAsyncInterface.
Public methodIsInMemory
Indicates whether a tile is in main memory. Called when the node front manager evaluates the texture front.
Public methodLockTile
Set the LOCKED state to true for the given SoLDMTileID
Public methodLockTiles
Set the LOCKED state to true for all tile loaded in memory
Public methodPrioritizeTiles
Allows to let the user know what tiles are prioritary and should not be reset in the resetWeight functions. All tileIds between 0 and up to maxTileId are prioritary. This function is called right before the resetWeight function.
Public methodReleaseTileData(SoLDMTileID)
Allows releasing data associated to a given tileID from memory. If supported volumeDataId allows to choose which volume data should be release. -1 means all volumes in the MultiDataSeparator.
Public methodReleaseTileData(SoLDMTileID, UInt16)
Public methodRequestRefetch
Launch asynchronous request for async buffer attached to this ID. This allow to manage data that implement SoBufferAsyncInterface.
Public methodRequestTileData
This function prepares an asynchronous request and return immediately. It must use dataAccess.GetRequestedTile() to get the requested tile list. Returns true if the request is in fact synchronous (all tiles were already loaded).
Public methodReset

The reset function is useful when using a customized LDM manager.

(Inherited from SoLDMLargeDataManagement.)
Public methodResetWeights
Reset weights to init the topology before evaluating it. This function is called before a topology evaluation starting with CheckResidencyAndUpdateWeight(0, weight).
Public methodResourceChangeNotify
Notification of a memory resource change. If the application changes the main memory resource using the SoLDMResourceManager, ResourceChangeNotify is called to notify the SoLDMTileManager that more tiles can be loaded or some must be unloaded.
Public methodSetAllowLoading
This function is called when using the NO_USER_INTERACTION mode. This mode should essentially allow loading only when the user does not interact with the scene.
Public methodStartNumDataNotify
Public methodStartNumDataNotify(Int32)
Public methodStartNumDataNotify(Int32, Int32)
Public methodStartTransaction
Functions to keep memory state stable when querying state. Indicates a memory transaction is starting.
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Public methodUnLockTile
Set the LOCKED state to false for the given SoLDMTileID
Public methodUnLockTiles
Set the LOCKED state to FALSE for all tiles loaded in memory
Public methodUpdateRegions
Update a region of data in memory. All the tiles intersecting the regions must be prefetched. Called if the application uses the SoVolumeData.UpdateRegion function.
Top
See Also