Fovia's .NET Client/Server API
Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
com.fovia.hdrc.hdrcRenderQueue Class Reference
Inheritance diagram for com.fovia.hdrc.hdrcRenderQueue:
com.fovia.hdrcsrv.hdrcDefines com.fovia.hdrc.hdrcIRenderParamsReceiver

Public Member Functions

int applyTransformToQueue (MATRIX44D trans)
 
int breakStreaming ()
 
int clearQueue ()
 
int fastSwap (hdrcVolumeDataContext volumeData, hdrcOctreeContext octree) throws IOException
 
int getAndResetModifiedTFs ()
 
int getAndResetModifiedTFs (long masks[])
 
hdrcVolumeDataContext getCurvedReformat (int numProjPlanesPerSlice, int numSlices, int ppWidth, int ppHeight, int measurementSlice, float Zoom, MATRIX44D arrProjPlanes[][], int type) throws IOException
 
int getMaximumFrameRate ()
 
long getNID ()
 
hdrcRenderEngineContext getRenderEngineContext ()
 
int getRenderEngineType ()
 
RENDER_PARAMS getRenderParams (boolean bIncludeQueuedParams) throws IOException
 
RENDER_PARAMS getRenderParams () throws IOException
 
RENDER_PARAMS getRenderParamsCached ()
 
RENDER_RANGE_PARAMS[] getTransferFunction (int index) throws IOException
 
RENDER_RANGE_PARAMS[] getTransferFunction (int index, boolean bIncludeQueuedParams) throws IOException
 
RENDER_RANGE_PARAMS[] getTransferFunctionCached (int index)
 
 hdrcRenderQueue ()
 
 hdrcRenderQueue (boolean bRawFrameReadyCallbacks)
 
boolean init (hdrcServerContext serverContext, hdrcVolumeDataContext volumeData, hdrcOctreeContext octree) throws IOException
 
boolean init4D (hdrcServerContext serverContext, hdrcVolumeDataContext volumeData[], hdrcOctreeContext octree[]) throws IOException
 
boolean isConvertedFrameFinal ()
 
boolean isFinalShown ()
 
boolean isRendering ()
 
int releaseSessionResources () throws IOException
 
int render () throws IOException
 
int renderFinal () throws IOException
 
int renderFinal (boolean bIgnoreParams, int paramsToIgnore) throws IOException
 
int renderFinal (boolean bNotifyListeners) throws IOException
 
int renderFinal (boolean bNotifyListeners, boolean bIgnoreParams, int paramsToIgnore) throws IOException
 
int setAdaptiveJPEGCompressionParam (ADAPTIVEJPEGPARAMS params) throws IOException
 
int setAutonavigating (boolean bNav, double speed)
 
int setCompressionType (int type, int quality)
 
int setCurvedMPRPath (int numProjPlanes, MATRIX44D arrProjPlanes[], int type) throws IOException
 
int setDontRenderWhileDisplaying (boolean bVal)
 
int setFinalCompressionType (int type, int quality)
 
int setFinalRenderTimeout (long time)
 
int setFrameListener (hdrcRQFrameListener listener)
 
int setLocalRendering (boolean bVal)
 
int setMaximumFrameRate (int fps)
 
int setNoFinalRenders (boolean bVal)
 
int setParameterIgnoringEnabled (boolean bVal)
 
int setRenderEngineContext (hdrcRenderEngineContext pRenderContext) throws IOException
 
int setRenderParams (RENDER_PARAMS rp) throws IOException
 
int setRenderParams (RENDER_PARAMS rp, boolean bNotifyLinked) throws IOException
 
int setRenderParams (RENDER_PARAMS rp, POLYGON_PARAMS pp) throws IOException
 
int setRenderParams (RENDER_PARAMS rp, POLYGON_PARAMS pp, boolean bNotifyLinked) throws IOException
 
void setStereoMode (boolean bEnabled)
 
int setTransferFunction (int index, RENDER_RANGE_PARAMS rrp[]) throws IOException
 
int setUseAdaptiveJPEGCompression (boolean useAdaptiveJPEGCompression) throws IOException
 
int setViewMode (int mode) throws IOException
 
int stopThreads () throws InterruptedException
 
int updateImage (VOLVISIMAGE imm)
 
int updateImage (VOLVISIMAGE imm, RENDER_PARAMS rp)
 
int waitForParamsToBeSet ()
 

Protected Member Functions

native int applyTransformToQueue (long nid, MATRIX44D trans)
 
native int breakStreaming (long nid)
 
native int clearQueue (long nid)
 
native int destroyNativeObject (long nid)
 
native int fastSwap (long nid, long volumeData, long octree) throws IOException
 
void finalize () throws Throwable
 
int fireConvertedFrameReady (hdrcRQFrameListener listener, VOLVISIMAGE imm, RENDER_PARAMS rp)
 
native int getAndResetModifiedTFs (long nid, long masks[])
 
native long getCurvedReformat (long nid, int numProjPlanesPerSlice, int numSlices, int ppWidth, int ppHeight, int measurementSlice, float Zoom, MATRIX44D arrProjPlanes[][], int type) throws IOException
 
native int getMaximumFrameRate (long nid)
 
native long getRenderEngineContext (long nid)
 
native int getRenderEngineType (long nid)
 
native RENDER_PARAMS getRenderParams (long nid, boolean bIncludeQueuedParams) throws IOException
 
native RENDER_PARAMS getRenderParamsCached (long nid)
 
native int getTransferFunction (long nid, RENDER_RANGE_PARAMS[] rrp, int index, boolean bIncludeQueuedParams) throws IOException
 
native int getTransferFunctionCached (long nid, RENDER_RANGE_PARAMS rrp[], int index)
 
native boolean init (long nid, long serverContext, long volumeData, long octree) throws IOException
 
native boolean init4D (long nid, long serverContext, long volumeData[], long octree[]) throws IOException
 
void initNativeObject (boolean bRawFrameReadyCallbacks)
 
native boolean isFinalShown (long nid)
 
native boolean isRendering (long nid)
 
native int releaseSessionResources (long nid) throws IOException
 
native int render (long nid) throws IOException
 
native int renderFinal (long nid, boolean bIgnoreParams, int paramsToIgnore) throws IOException
 
native int setAdaptiveJPEGCompressionParam (long nid, ADAPTIVEJPEGPARAMS params)
 
native int setAutonavigating (long nid, boolean bNav, double speed)
 
native int setCompressionType (long nid, int type, int quality)
 
native int setCurvedMPRPath (long nid, int numProjPlanes, MATRIX44D arrProjPlanes[], int type) throws IOException
 
native int setDontRenderWhileDisplaying (long nid, boolean bVal)
 
native int setFinalCompressionType (long nid, int type, int quality)
 
native int setFinalRenderTimeout (long nid, long time)
 
native int setFrameListener (long nid, hdrcRQFrameListener listener, VOLVISIMAGE convertedFrameImage)
 
native int setLocalRendering (long nid, boolean bVal)
 
native int setMaximumFrameRate (long nid, int fps)
 
native int setNoFinalRenders (long nid, boolean bVal)
 
native int setParameterIgnoringEnabled (long nid, boolean bVal)
 
native int setRenderEngineContext (long nid, long pRenderContext) throws IOException
 
int setRenderParams (long nid, RENDER_PARAMS rp, POLYGON_PARAMS pp) throws IOException
 
native int setRenderParams (long nid, RENDER_PARAMS rp, int ppMask, long callListIDs[]) throws IOException
 
native void setStereoMode (long nid, boolean bEnabled)
 
native int setTransferFunction (long nid, int index, RENDER_RANGE_PARAMS rrp[]) throws IOException
 
native int setUseAdaptiveJPEGCompression (long nid, boolean useAdaptiveJPEGCompression)
 
native int setViewMode (long nid, int mode) throws IOException
 
native int stopThreads (long nid) throws InterruptedException
 
native int updateImage (long nid, VOLVISIMAGE imm, RENDER_PARAMS rp)
 
int updateRenderParamMembers (RENDER_PARAMS rp)
 
native int updateRenderParamMembers (long nid, RENDER_PARAMS rp)
 
native int waitForParamsToBeSet (long nid)
 

Static Protected Member Functions

static native long createNativeRenderQueue (boolean bNoRawFrameReadyCallbacks)
 

Protected Attributes

boolean m_bConvertedFrameFinal = false
 
boolean m_bStereoMode = false
 
VOLVISIMAGE m_convertedFrameImage = new VOLVISIMAGE()
 
VOLVISIMAGE m_convertedFrameImage2 = new VOLVISIMAGE()
 
hdrcServerContext m_serverContext
 

Additional Inherited Members

- Static Public Attributes inherited from com.fovia.hdrcsrv.hdrcDefines
static final int CID_APPLY_AS_COLORIZATION_MAP = 66
 
static final int CID_APPLY_VOLUMETRIC_SHADOW_MAP = 72
 
static final int CID_AUTONAVIGATE = 29
 
static final int CID_CHECK_CHANNEL = 23
 
static final int CID_CREATE_IVOLUMESEGMENTATION = 26
 
static final int CID_CREATE_POLYGONUTIL = 60
 
static final int CID_CREATE_RENDER_ENGINE = 2
 
static final int CID_CREATE_VERTEX_CALL_LIST = 53
 
static final int CID_CREATE_VOLUME_OCTREE = 4
 
static final int CID_CREATE_VOLUME_SHADOW = 74
 
static final int CID_FAST_SWAP = 44
 
static final int CID_FIND_PATH = 52
 
static final int CID_FINISH_JOB = 16
 
static final int CID_GET_COLORIZATION = 58
 
static final int CID_GET_CURVED_REFORMAT = 43
 
static final int CID_GET_DATA_HOLDER = 20
 
static final int CID_GET_HISTOGRAM = 28
 
static final int CID_GET_JOB_INFO = 15
 
static final int CID_GET_RENDER_ENGINE_TF_COUNT = 65
 
static final int CID_GET_RENDER_PARAMS = 6
 
static final int CID_GET_SEGMENTATION = 30
 
static final int CID_GET_TRANSFER_FUNCTION = 57
 
static final int CID_GET_VISIBILITY_INFO = 39
 
static final int CID_GET_VOLUME_DATA_PARAMS = 17
 
static final int CID_GETDICOMTAGS = 35
 
static final int CID_IS_RENDERING_FINISHED = 27
 
static final int CID_IVOLUMESEGMENTATION_CALL = 25
 
static final int CID_LOAD_DICOM_FILE_LIST = 33
 
static final int CID_LOAD_PRESET = 9
 
static final int CID_LOAD_RAW_FILES = 62
 
static final int CID_LOAD_SERIES_FROM_DICOM_LIST = 34
 
static final int CID_LOAD_VOLUME_DATA = 1
 
static final int CID_OUTPUTDICOMIMAGES = 37
 
static final int CID_POLYGONUTIL_CALL = 61
 
static final int CID_PROJECT_POINT = 13
 
static final int CID_PROJECT_VOLUMETRIC_SHADOW = 45
 
static final int CID_RELEASE_ALL_SESSION_OBJECT = 55
 
static final int CID_RELEASE_SESSION_OBJECT = 19
 
static final int CID_RENDER = 7
 
static final int CID_RENDER_SHADOW_LIGHT = 73
 
static final int CID_RETRIEVE_DATA = 22
 
static final int CID_SAVE_PRESET = 18
 
static final int CID_SCAN_DICOM_DIRECTORY = 32
 
static final int CID_SET_CLIENT_VERSION = 64
 
static final int CID_SET_COLORIZATION = 59
 
static final int CID_SET_COLORIZATION_COLORS = 51
 
static final int CID_SET_COLORIZATION_ENABLED = 49
 
static final int CID_SET_COLORIZATION_INDEX = 50
 
static final int CID_SET_CURVED_MPR_PATH = 42
 
static final int CID_SET_FAST_POLYGONS_ENABLED = 67
 
static final int CID_SET_FRAMES_PER_PHASE = 48
 
static final int CID_SET_PHASE = 47
 
static final int CID_SET_RENDER_PARAMS = 5
 
static final int CID_SET_SEG_BOUNDARIES = 70
 
static final int CID_SET_SEGMENTATION = 31
 
static final int CID_SET_TRANSFER_FUNCTION = 56
 
static final int CID_SET_VIEW_MODE = 24
 
static final int CID_SET_VOLUME_DATA = 3
 
static final int CID_SET_VOLUME_DATA_4D = 46
 
static final int CID_SETDICOMTAGS = 36
 
static final int CID_SETRP_AND_RENDER = 8
 
static final int CID_SETRP_RENDER_AND_SEND_PREV = 41
 
static final int CID_SHOOT_RAY = 12
 
static final int CID_SHOOT_RAY_FAST = 38
 
static final int CID_SHOOT_RAY_GET_WALL = 69
 
static final int CID_START_JOB = 14
 
static final int CID_STORE_DATA = 21
 
static final int CID_TESTFUNCTION = 63
 
static final int CID_UPDATE_OCTREE = 68
 
static final int CID_UPDATE_VERTEX_CALL_LISTS = 54
 
static final int CID_VOLUME_SHADOW_CALL = 71
 
static final int CID_WAIT_PREV_RENDER = 40
 
static final int CM_DILATION = 5
 
static final int CM_EROSION = 4
 
static final int CM_MIN_MAX = 0
 
static final int CM_MIN_MAX_BONE = 3
 
static final int CM_MIN_MAX_SMART = 1
 
static final int CM_MIN_MAX_SMART_EXPAND = 2
 
static final int COLOR_MODEL_GRAYSCALE12 = COLOR_MODEL_GRAYSCALE8+1
 
static final int COLOR_MODEL_GRAYSCALE8 = COLOR_MODEL_NONE+1
 
static final int COLOR_MODEL_NONE = 0
 
static final int COLOR_MODEL_RGB = COLOR_MODEL_GRAYSCALE12+1
 
static final int COMPRESSION_TYPE_JPEG = COMPRESSION_TYPE_ZIP+1
 
static final int COMPRESSION_TYPE_JPEG2000 = COMPRESSION_TYPE_STRETCH+1
 
static final int COMPRESSION_TYPE_JPEG_RGB = COMPRESSION_TYPE_PNG+1
 
static final int COMPRESSION_TYPE_NONE = 0
 
static final int COMPRESSION_TYPE_PNG = COMPRESSION_TYPE_RLE+1
 
static final int COMPRESSION_TYPE_RLE = COMPRESSION_TYPE_JPEG2000+1
 
static final int COMPRESSION_TYPE_STRETCH = COMPRESSION_TYPE_JPEG+1
 
static final int COMPRESSION_TYPE_ZIP = COMPRESSION_TYPE_NONE+1
 
static final int CP_FRAGMENT_FORM_MASK = 0x0000C000
 
static final int CP_FRAGMENT_FORM_SQUARE = 0x00004000
 
static final int CP_FRAGMENT_FORM_STRIPE = 0x00008000
 
static final int CP_FRAGMENT_ID_MASK = 0x000000FF
 
static final int CP_FRAGMENT_ID_SHIFT = 0
 
static final int CP_FRAGMENT_NONE = 0x0
 
static final int CP_FRAGMENT_PACKING_FRAGMENT_ONLY = 0x00001000
 
static final int CP_FRAGMENT_PACKING_MASK = 0x0000F000
 
static final int CP_FRAGMENT_PACKING_SHIFT = 11
 
static final int CP_FRAGMENT_PACKING_TYPE_MASK = 0x00003000
 
static final int CP_FRAGMENT_PACKING_WHOLE_IMAGE = 0x00000000
 
static final int CP_FRAGMENT_SQUARE_SIZE = 256
 
static final int CP_FRAGMENT_STRIPE_SIZE = 128
 
static final int CP_FRAGMENT_VALID = 0x70000000
 
static final int CULL_MODE_BACK = 1
 
static final int CULL_MODE_BACK_INV = 2
 
static final int CULL_MODE_NONE = 0
 
static final int CURVED_MPR_TYPE_X_IS_CURVED = CURVED_MPR_TYPE_X_IS_CURVED_TRILINEAR
 
static final int CURVED_MPR_TYPE_X_IS_CURVED_TRICUBIC = CURVED_MPR_TYPE_Y_IS_CURVED_TRILINEAR+1
 
static final int CURVED_MPR_TYPE_X_IS_CURVED_TRILINEAR = 0
 
static final int CURVED_MPR_TYPE_Y_IS_CURVED = CURVED_MPR_TYPE_Y_IS_CURVED_TRILINEAR
 
static final int CURVED_MPR_TYPE_Y_IS_CURVED_TRICUBIC = CURVED_MPR_TYPE_X_IS_CURVED_TRICUBIC+1
 
static final int CURVED_MPR_TYPE_Y_IS_CURVED_TRILINEAR = CURVED_MPR_TYPE_X_IS_CURVED_TRILINEAR+1
 
static final int CUT_PLANE_MODE_MAX_DISTANCE = CUT_PLANE_MODE_STANDARD+1
 
static final int CUT_PLANE_MODE_MIN_DISTANCE = CUT_PLANE_MODE_MAX_DISTANCE+1
 
static final int CUT_PLANE_MODE_STANDARD = 0
 
static final int CUT_PLANE_STATUS_DISABLED = 0
 
static final int CUT_PLANE_STATUS_ENABLED = CUT_PLANE_STATUS_DISABLED+1
 
static final int CUT_PLANE_TYPE_NEGATIVE = CUT_PLANE_TYPE_POSITIVE+1
 
static final int CUT_PLANE_TYPE_POSITIVE = 0
 
static final int DEFAULT_RENDER_IMAGE_HEIGHT = 512
 
static final int DEFAULT_RENDER_IMAGE_WIDTH = 512
 
static final int DO_SLICE = 0
 
static final int DT_BIG_ENDIAN = 2
 
static final int DT_MONOCHROME_1 = 16
 
static final int DT_REVERSE_BIT_ORDER = 4
 
static final int DT_SIGNED = 1
 
static final int DT_UPPER_BITS_DIRTY = 8
 
static final int E_FAIL = 0x80004005
 
static final int E_INVALIDARG = 0x80070057
 
static final int E_NOINTERFACE = 0x80004002
 
static final int E_NOTIMPL = 0x80004001
 
static final int E_OUTOFMEMORY = 0x8007000E
 
static final int E_PENDING = 0x8000000A
 
static final int E_POINTER = 0x80004003
 
static final int E_UNEXPECTED = 0x8000FFFF
 
static final int EROSION_DILATION_CLASSIC = 255
 
static final int FHC_COMPLETE_VOLUME = 3
 
static final int FHC_FIRST_LAYER = 2
 
static final int FHC_SURFACE_ONLY = 1
 
static final int FHC_WHOLE_VOLUME = 0
 
static final int FPS_NO_CAP = 100000
 
static final int IMAGE_TYPE_LUMINANCE12 = (2<<8)|2
 
static final int IMAGE_TYPE_LUMINANCE16 = (3<<8)|2
 
static final int IMAGE_TYPE_LUMINANCE8 = (1<<8)|1
 
static final int IMAGE_TYPE_NONE = 0
 
static final int IMAGE_TYPE_RGB = (4<<8)|3
 
static final int IMAGE_TYPE_RGBA = (5<<8)|4
 
static final int IMAGE_TYPE_RGBX = (6<<8)|4
 
static final int LDO_DCM_UTF8 = 1002
 
static final int LDO_DICOM_DIRECTORY = 1
 
static final int LDO_DICOM_FILE_SET =3
 
static final int LDO_FILE_SET = 4
 
static final int LDO_MEMORY_BLOCK = 2
 
static final int LDO_MEMORY_MAP_SET = 5
 
static final int LDO_RAW_DATASET_PATH = 0
 
static final int LDO_SEGY_DATASET_PATH =6
 
static final int LIGHT_MODEL_BEAM = 0
 
static final int LIGHT_MODEL_HEADLIGHT = LIGHT_MODEL_BEAM+1
 
static final int LMM_ATTACHED_TO_CAMERA = 0
 
static final int LMM_ATTACHED_TO_DATASET = 1
 
static final int MAX_ALTERNATE_TRANSFER_FUNCTIONS = 7
 
static final int MAX_CT_VALUE = 1024*4-1024
 
static final int MAX_CUTPLANES = 16
 
static final int MAX_DATASET_BIT_DEPTH = 16
 
static final int MAX_DIMENSION_X = 4096
 
static final int MAX_DIMENSION_Y = 4096
 
static final int MAX_DIMENSION_Z = 4096
 
static final int MAX_OPACITY_FUNCTION_VALUE = 1024*4 - 1
 
static final int MAX_RENDER_IMAGE_HEIGHT = 8192
 
static final int MAX_RENDER_IMAGE_WIDTH = 8192
 
static final int MAX_RENDER_RANGE_POINTS = 50
 
static final int MAX_RENDER_RANGES_PARAMS = 8
 
static final float MAX_RENDER_ZOOM = 700.0f
 
static final double MAX_THIN_SLAB = 4096
 
static final int MESH_UPDATE_ALL = 63
 
static final int MESH_UPDATE_COLORS = 4
 
static final int MESH_UPDATE_INDICES = 16
 
static final int MESH_UPDATE_NORMALS = 2
 
static final int MESH_UPDATE_SHADING = 8
 
static final int MESH_UPDATE_TEX_COORDS = 32
 
static final int MESH_UPDATE_VERTICES = 1
 
static final int MIN_CT_VALUE = 0 -1024
 
static final int MIN_OPACITY_FUNCTION_VALUE = 0
 
static final int MIN_RENDER_IMAGE_HEIGHT = 64
 
static final int MIN_RENDER_IMAGE_WIDTH = 64
 
static final float MIN_RENDER_ZOOM = 0.125f
 
static final double MIN_THIN_SLAB = 0
 
static final int PET_MARCHING_CUBES = 0
 
static final int PPM_CALL_LISTS = (1<<0)
 
static final int PPM_NONE = 0
 
static final int RENDER_ENGINE_ID_MIP = 3
 
static final int RENDER_ENGINE_ID_MPR = 0
 
static final int RENDER_ENGINE_ID_PAR = 1
 
static final int RENDER_ENGINE_ID_PER = 2
 
static final int RENDER_IMAGE_HEIGHT_STEP = 16
 
static final int RENDER_IMAGE_WIDTH_STEP = 16
 
static final int RENDER_QUALITY_BEST = RENDER_QUALITY_BETTER+1
 
static final int RENDER_QUALITY_BETTER = RENDER_QUALITY_DRAFT+1
 
static final int RENDER_QUALITY_DRAFT = RENDER_QUALITY_RAW+1
 
static final int RENDER_QUALITY_NONE = 0
 
static final int RENDER_QUALITY_PRINT = 0x7fffffff
 
static final int RENDER_QUALITY_RAW = RENDER_QUALITY_NONE+1
 
static final int RENDER_RANGE_STATUS_DISABLED = RENDER_RANGE_STATUS_ENABLED+1
 
static final int RENDER_RANGE_STATUS_ENABLED = 0
 
static final int RENDER_RANGE_TYPE_AUTO_COLOR = RENDER_RANGE_TYPE_CATMUL+1
 
static final int RENDER_RANGE_TYPE_BSPLINE = RENDER_RANGE_TYPE_LINES_END_COLOR+1
 
static final int RENDER_RANGE_TYPE_CATMUL = RENDER_RANGE_TYPE_BSPLINE+1
 
static final int RENDER_RANGE_TYPE_LINES = RENDER_RANGE_TYPE_NONE+1
 
static final int RENDER_RANGE_TYPE_LINES_END_COLOR = RENDER_RANGE_TYPE_LINES+1
 
static final int RENDER_RANGE_TYPE_NONE = 0
 
static final int RENDER_STAGE_AUTO_IMPROVE = RENDER_STAGE_CURRENT+1
 
static final int RENDER_STAGE_CURRENT = RENDER_STAGE_FINAL+1
 
static final int RENDER_STAGE_FINAL = RENDER_STAGE_PROGR5+1
 
static final int RENDER_STAGE_NONE = 0
 
static final int RENDER_STAGE_PROGR0 = RENDER_STAGE_NONE+1
 
static final int RENDER_STAGE_PROGR1 = RENDER_STAGE_PROGR0+1
 
static final int RENDER_STAGE_PROGR2 = RENDER_STAGE_PROGR1+1
 
static final int RENDER_STAGE_PROGR3 = RENDER_STAGE_PROGR2+1
 
static final int RENDER_STAGE_PROGR4 = RENDER_STAGE_PROGR3+1
 
static final int RENDER_STAGE_PROGR5 = RENDER_STAGE_PROGR4+1
 
static final int RF_ALL = 0x7FFFFFFF
 
static final int RF_ALLOW_IMAGE_SMOOTH = (1<<2)
 
static final int RF_ALLOW_RENDER_CACHE = (1<<1)
 
static final int RF_CUT_PLANES_AFFECT_POLYGONS =(1 << 13)
 
static final int RF_DEFAULT = RF_ALLOW_IMAGE_SMOOTH|RF_USE_GRADIENTS|RF_USE_SLAB_MIP
 
static final int RF_DONT_NORMALIZE_TF = (1<<7)
 
static final int RF_FRONT_CLIPPING_PLANE_ENABLED = (1<<8)
 
static final int RF_LONG_TRIANGLE_FIX =(1 << 14)
 
static final int RF_MASK_DEFAULT = RF_ALLOW_IMAGE_SMOOTH|RF_USE_GRADIENTS|RF_USE_SLAB_MPR|RF_USE_SLAB_PAR|RF_USE_SLAB_MIP|RF_POLYGON_LINES_IN_SCREEN_SPACE
 
static final int RF_NONE = (0)
 
static final int RF_POLYGON_CROSS_SECTIONS =(1 << 12)
 
static final int RF_POLYGON_LINES_IN_SCREEN_SPACE =(1 << 10)
 
static final int RF_THICK_MODES_USE_TRANSFER_FUNCTION =(1 << 9)
 
static final int RF_THIN_MODES_OUTPUT_RGB =(1 << 15)
 
static final int RF_USE_GRADIENTS = (1<<3)
 
static final int RF_USE_SLAB_MIP = (1<<6)
 
static final int RF_USE_SLAB_MPR = (1<<4)
 
static final int RF_USE_SLAB_PAR = (1<<5)
 
static final int RF_VERTEX_COLOR_MAP =(1 << 11)
 
static final int RPM_ALL = 0x7FFFFFFF
 
static final int RPM_AMBIENCE = (1 <<30)
 
static final int RPM_BACK_COLOR = (1<<17)
 
static final int RPM_BRIGHTNESS = (1<<18)
 
static final int RPM_COLOR_MODEL = (1<<7)
 
static final int RPM_CROP_BOX = (1<<16)
 
static final int RPM_CUT_PLANES = (1<<23)
 
static final int RPM_DEFAULT = RPM_ALL
 
static final int RPM_DESIRED_FPS = (1<<10)
 
static final int RPM_FRONT_SLAB_POLYGON_TRANSPARENCY = (1 <<29)
 
static final int RPM_GRAD_INSEN_SLAB = (1<<15)
 
static final int RPM_LIGHT_MODEL = (1<<9)
 
static final int RPM_LIGHT_PARAMS = (1<<27)
 
static final int RPM_MIN_QUALITY_BIAS = (1<<28)
 
static final int RPM_NONE = (0)
 
static final int RPM_NUM_RENDERING_THREADS = (1<<25)
 
static final int RPM_PHONG_PARAMETERS = RPM_AMBIENCE | RPM_BRIGHTNESS | RPM_SHININESS | RPM_REFLECTION
 
static final int RPM_QUALITY = (1<<8)
 
static final int RPM_RAYCASTING_PRECISION = (1<<21)
 
static final int RPM_REAR_SLAB_POLYGON_TRANSPARENCY = (1 <<31)
 
static final int RPM_REFLECTION = (1<<20)
 
static final int RPM_RENDER_IMAGE_SIZE = (1<<24)
 
static final int RPM_RENDER_RANGE_MIN_MAX = (1<<11)
 
static final int RPM_RENDER_RANGES = (1<<12)
 
static final int RPM_RENDER_SAMPLES = (1<<22)
 
static final int RPM_RENDER_TYPE = (1<<0)
 
static final int RPM_SHININESS = (1<<19)
 
static final int RPM_SLAB_THICKNESS = (1<<14)
 
static final int RPM_STEREO_MODE = (1<<26)
 
static final int RPM_TRANSFORM = RPM_TRANSFORM_RSS|RPM_TRANSFORM_OFFSET|RPM_TRANSFORM_PC
 
static final int RPM_TRANSFORM_OFFSET = RPM_TRANSFORM_XPOS|RPM_TRANSFORM_YPOS|RPM_TRANSFORM_ZPOS
 
static final int RPM_TRANSFORM_PC = (1<<5)
 
static final int RPM_TRANSFORM_RSS = (1<<4)
 
static final int RPM_TRANSFORM_XPOS = (1<<1)
 
static final int RPM_TRANSFORM_YPOS = (1<<2)
 
static final int RPM_TRANSFORM_ZPOS = (1<<3)
 
static final int RPM_VIEW_ANGLE = (1<<13)
 
static final int RPM_ZOOM = (1<<6)
 
static final int RT_AUTO_FADED_MIP = (1<<18)
 
static final int RT_AUTO_MINIP = (1<<19)
 
static final int RT_AUTO_MIP = (1<<17)
 
static final int RT_BRUTE_FORCE_AVE = RT_THIN_AVE
 
static final int RT_BRUTE_FORCE_FMIP = RT_THIN_FMIP
 
static final int RT_BRUTE_FORCE_MINIP = RT_THIN_MINIP
 
static final int RT_BRUTE_FORCE_MIP = RT_THIN_MIP
 
static final int RT_MIP = RT_THICK_MIP
 
static final int RT_MPR_AXIAL = (1<<3)
 
static final int RT_MPR_CORONAL = (1<<5)
 
static final int RT_MPR_CURVED = (1<<13)
 
static final int RT_MPR_OBLIQUE = (1<<6)
 
static final int RT_MPR_SAGITTAL = (1<<4)
 
static final int RT_MPR_XY = (1<<0)
 
static final int RT_MPR_XZ = (1<<1)
 
static final int RT_MPR_YZ = (1<<2)
 
static final int RT_NONE = 0
 
static final int RT_PARALLEL = (1<<7)
 
static final int RT_PERSPECTIVE = (1<<8)
 
static final int RT_RESERVED16 = (1<<16)
 
static final int RT_THICK_FADED_MIP = (1<<10)
 
static final int RT_THICK_MINIP = (1<<20)
 
static final int RT_THICK_MINIP_PERSPECTIVE = (1<<22)
 
static final int RT_THICK_MIP = (1<<9)
 
static final int RT_THICK_MIP_PERSPECTIVE = (1<<21)
 
static final int RT_THIN_AVE = (1<<14)
 
static final int RT_THIN_FMIP = (1<<12)
 
static final int RT_THIN_MINIP = (1<<15)
 
static final int RT_THIN_MIP = (1<<11)
 
static final int RT_XRAY = RT_THICK_FADED_MIP
 
static final int S_FALSE = 1
 
static final int S_OK = 0
 
static final int SEG_GRAN_1X1X1 = 0
 
static final int SEG_GRAN_2X2X2 = 1
 
static final int SEGMENTATION_TYPE_ADDITIVE = 0
 
static final int SEGMENTATION_TYPE_SUBTRACTIVE = 1
 
static final int SK_CUSTOM = 4
 
static final int SK_MIN_MAX = 0
 
static final int SK_MIN_MAX_BONE = 3
 
static final int SK_MIN_MAX_GRADIENT = 1
 
static final int SK_MIN_MAX_GRADIENT_EXPAND = 2
 
static final int SMOOTH3D_NONE = 0
 
static final int SMOOTH3D_TRICUBIC = 2
 
static final int SMOOTH3D_TRILINEAR = 1
 
static final int SPT_LAPLACIAN = 1
 
static final int SPT_NONE = 0
 
static final int ST_ADDITIVE = 0
 
static final int ST_SUBTRACTIVE = 1
 
static final int STEREO_MODE_LEFT_EYE = 1
 
static final int STEREO_MODE_OFF = 0
 
static final int STEREO_MODE_RIGHT_EYE = 2
 
static final int THICK_TF_MIP_OPACITY = 500
 
static final int TO_NONE = 0
 
static final int TO_SHOW_COMMAND_ARGUMENTS = (1 << 2)
 
static final int TO_SHOW_COMMAND_DEBUG1 = (1 << 4)
 
static final int TO_SHOW_COMMAND_DEBUG2 = (1 << 5)
 
static final int TO_SHOW_COMMAND_DEBUG3 = (1 << 6)
 
static final int TO_SHOW_COMMAND_RESULTS = (1 << 3)
 
static final int TO_SHOW_COMMAND_TIME = (1 << 1)
 
static final int TO_SHOW_COMMANDS = (1 << 0)
 
static final double TRANSFER_FUNCTION_LOG_CORRECTION = 0.4
 
static final int UPDATE_MODE_CLEAR = 0
 
static final int UPDATE_MODE_CLEAR_BY_MASK = 10
 
static final int UPDATE_MODE_CLEAR_MULTI_TF = UPDATE_MODE_SET_TF_2+1
 
static final int UPDATE_MODE_CLEAR_NODES_ONLY = UPDATE_MODE_INVERT_MULTI_TF+1
 
static final int UPDATE_MODE_INVERT = UPDATE_MODE_NEGATIVE+1
 
static final int UPDATE_MODE_INVERT_MULTI_TF = UPDATE_MODE_CLEAR_MULTI_TF+1
 
static final int UPDATE_MODE_NEGATIVE = UPDATE_MODE_POSITIVE+1
 
static final int UPDATE_MODE_POSITIVE = UPDATE_MODE_CLEAR+1
 
static final int UPDATE_MODE_REBUILD = UPDATE_MODE_INVERT+1
 
static final int UPDATE_MODE_SET_TF_1 = UPDATE_MODE_REBUILD+1
 
static final int UPDATE_MODE_SET_TF_2 = UPDATE_MODE_SET_TF_1+1
 
static final int VCL_OPTIMIZE_DO_NOT_REMOVE = 0xFFFFFFFF
 
static final int VCL_TYPE_LINES = 1
 
static final int VCL_TYPE_TRIANGLES = 0
 
static final int VCLF_CUT_PLANES_AFFECT_POLYGONS =(1 << 0)
 
static final int VCLF_INVERT_MESH_GRADIENTS =(1 << 2)
 
static final int VCLF_NONE =(0 )
 
static final int VCLF_PER_CALL_LIST_INTERSECTION_LINE_PARAMS =(1 << 1)
 
static final int VLT_DIRECTIONAL = 0
 
static final int VLT_FRUSTRUM = 1
 
static final int VM_VEWMPR = 0
 
static final int VM_VIEW3D = 1
 

Detailed Description

Provides render queueing functionality. You simply pass all RENDER_PARAMS to this object and efficient streaming and final rendering calls automatically happen. Specify an hdrcRQFrameListener to recieve events when a frame is ready for display. Call renderFinal() when you're sure you're done sending rendering parameters for a while (such as when the user releases the mouse after a drag operation).

Constructor & Destructor Documentation

com.fovia.hdrc.hdrcRenderQueue.hdrcRenderQueue ( )

Standard constructor.

Member Function Documentation

int com.fovia.hdrc.hdrcRenderQueue.applyTransformToQueue ( MATRIX44D  trans)

Instantly applies the transform to all the RENDER_PARAMS waiting to be rendered.

Parameters
transMATRIX44D
int com.fovia.hdrc.hdrcRenderQueue.breakStreaming ( )

Requests that streaming break at the next possible opportunity. Normally, the queue will wait a little while before breaking streaming to see if more params come in. This will make sure that wait does not happen.

int com.fovia.hdrc.hdrcRenderQueue.clearQueue ( )

Clears any queued up render param changes. They will be discarded and the information will be lost.

int com.fovia.hdrc.hdrcRenderQueue.fastSwap ( hdrcVolumeDataContext  volumeData,
hdrcOctreeContext  octree 
) throws IOException

Requests a fast swap of the current volume to another. The new volume must be the same dimension, orientation, spacing, and skew.

Parameters
volumeData
octree
Returns
Exceptions
IOException
hdrcVolumeDataContext com.fovia.hdrc.hdrcRenderQueue.getCurvedReformat ( int  numProjPlanesPerSlice,
int  numSlices,
int  ppWidth,
int  ppHeight,
int  measurementSlice,
float  Zoom,
MATRIX44D  arrProjPlanes[][],
int  type 
) throws IOException

This will not go through the queuing process. You MUST make sure you're actually in curved MPR mode before calling this function. To ensure this, call waitForParamsToBeSet() after setting the render type.

int com.fovia.hdrc.hdrcRenderQueue.getMaximumFrameRate ( )

Returns the current max FPS. See setMaximumFrameRate(int) for details.

Returns
int
hdrcRenderEngineContext com.fovia.hdrc.hdrcRenderQueue.getRenderEngineContext ( )

Returns the render engine context associated with this queue.

Returns
hdrcRenderEngineContext

Implements com.fovia.hdrc.hdrcIRenderParamsReceiver.

int com.fovia.hdrc.hdrcRenderQueue.getRenderEngineType ( )

Returns the render engine type associated with this queue. This will be a value with the form RT_* from hdrcDefines.

Returns
int
RENDER_PARAMS com.fovia.hdrc.hdrcRenderQueue.getRenderParams ( boolean  bIncludeQueuedParams) throws IOException

Returns the current state of the engine in a RENDER_PARAMS structure.

Parameters
bIncludeQueuedParamsSet to true if you want to include the RENDER_PARAMS currently queued to be sent to the server.
Returns
RENDER_PARAMS
Exceptions
IOException

Implements com.fovia.hdrc.hdrcIRenderParamsReceiver.

References com.fovia.hdrc.hdrcRenderQueue.getRenderParams().

RENDER_PARAMS com.fovia.hdrc.hdrcRenderQueue.getRenderParams ( ) throws IOException

Returns the current state of the engine in a RENDER_PARAMS structure. Note that this includes RENDER_PARAMS queued to be sent to the server call getRenderParams(boolean) and specify false for bIncludeQueuedParams

Returns
RENDER_PARAMS
Exceptions
IOException

Implements com.fovia.hdrc.hdrcIRenderParamsReceiver.

Referenced by com.fovia.hdrc.hdrcRenderQueue.getRenderParams().

boolean com.fovia.hdrc.hdrcRenderQueue.init ( hdrcServerContext  serverContext,
hdrcVolumeDataContext  volumeData,
hdrcOctreeContext  octree 
) throws IOException

Initializes the render queue. You must call this function before calling other server related functions on the object.

boolean com.fovia.hdrc.hdrcRenderQueue.init4D ( hdrcServerContext  serverContext,
hdrcVolumeDataContext  volumeData[],
hdrcOctreeContext  octree[] 
) throws IOException

Initializes the render queue for 4D rendering on the server side. All volumes must be the same dimension, orientation, spacing, and skew.

Parameters
serverContext
volumeData
octree
Returns
Exceptions
IOException
boolean com.fovia.hdrc.hdrcRenderQueue.isRendering ( )

Returns true if the engine is currently rendering a frame.

Returns
int com.fovia.hdrc.hdrcRenderQueue.releaseSessionResources ( ) throws IOException

Call this if you wish to free up server resources for this object but do not want to disconnect from the server yet.

Exceptions
IOException
InterruptedException
int com.fovia.hdrc.hdrcRenderQueue.render ( ) throws IOException

Signals a render to happen at the next earliest convenience.

Exceptions
IOException
int com.fovia.hdrc.hdrcRenderQueue.renderFinal ( ) throws IOException

Enqueues a final render into the render queue.

Exceptions
IOException

Implements com.fovia.hdrc.hdrcIRenderParamsReceiver.

References com.fovia.hdrcsrv.hdrcDefines.RPM_NONE.

Referenced by com.fovia.hdrc.hdrcRenderQueue.renderFinal().

int com.fovia.hdrc.hdrcRenderQueue.renderFinal ( boolean  bIgnoreParams,
int  paramsToIgnore 
) throws IOException

Just like renderFinal(), except allows parameter interrupting. You should consider this functionality if you're implementing a mouse drag operation.

Parameters
bIgnoreParamsSet to true if you want this final render to use the parameters from the last rendered frame
paramsToIgnoreLimits the parameters to be ignored. For example, if you're adjusting the orientation, you would put RPM_TRANSFORM in this parameter to specify that's the parameter that may have been adjusted since the last frame was displayed.
Exceptions
IOException

Implements com.fovia.hdrc.hdrcIRenderParamsReceiver.

References com.fovia.hdrc.hdrcRenderQueue.renderFinal().

int com.fovia.hdrc.hdrcRenderQueue.setAutonavigating ( boolean  bNav,
double  speed 
)

Call this to change whether we're autonavigating.

Parameters
bNavboolean
speeddouble

Implements com.fovia.hdrc.hdrcIRenderParamsReceiver.

int com.fovia.hdrc.hdrcRenderQueue.setCompressionType ( int  type,
int  quality 
)

Sets the compression parameters for interactive rendering. See COMPRESSION_TYPE_* from hdrcDefines.

Parameters
typeType of compression.
qualityThis parameter depends on what value type has.
int com.fovia.hdrc.hdrcRenderQueue.setCurvedMPRPath ( int  numProjPlanes,
MATRIX44D  arrProjPlanes[],
int  type 
) throws IOException

This will not go through the queuing process. You MUST make sure you're actually in curved MPR mode before calling this function. To ensure this, call waitForParamsToBeSet() after setting the render type.

Parameters
numProjPlanesint
arrProjPlanesMATRIX44D[]
typeint
Returns
int
Exceptions
IOException

Implements com.fovia.hdrc.hdrcIRenderParamsReceiver.

int com.fovia.hdrc.hdrcRenderQueue.setDontRenderWhileDisplaying ( boolean  bVal)

Some systems will not perform as well if you are displaying while rendering (maybe the threading model is not well implemented). Set this to true if you experience jerkiness in more difficult to render scenes.

Parameters
bVal
int com.fovia.hdrc.hdrcRenderQueue.setFinalCompressionType ( int  type,
int  quality 
)

Sets the compression parameters for final rendering. See COMPRESSION_TYPE_* from hdrcDefines.

Parameters
typeType of compression.
qualityThis parameter depends on what value type has.
int com.fovia.hdrc.hdrcRenderQueue.setFinalRenderTimeout ( long  time)

This should be a time in milliseconds. If it's -1, no final renders will happen automatically. They will need to be requested with renderFinal().

Parameters
time
int com.fovia.hdrc.hdrcRenderQueue.setFrameListener ( hdrcRQFrameListener  listener)

Call this to register your hdrcRQFrameListener to recieve events about frames rendered.

Parameters
listenerhdrcRQFrameListener
int com.fovia.hdrc.hdrcRenderQueue.setMaximumFrameRate ( int  fps)

Set's the desired frame rate to the specified value. Use FPS_NO_CAP to specify no cap. There is no cap to the frame rate by default.

Parameters
fpsDesired frame rate.
int com.fovia.hdrc.hdrcRenderQueue.setNoFinalRenders ( boolean  bVal)

If true, renderFinal() calls will be ignored.

Parameters
bVal
int com.fovia.hdrc.hdrcRenderQueue.setParameterIgnoringEnabled ( boolean  bVal)

This subsystem ensures that the last frame displayed is the state that the final render will have when the user releases the mouse button during a drag operation. Otherwise, the next frame would be rendered since it has already started rendering when the user releases the mouse button. Some render control types do not want this functionality. In particular, fusion types should always be synched and this would muck with that ability.

Parameters
bVal
int com.fovia.hdrc.hdrcRenderQueue.setRenderEngineContext ( hdrcRenderEngineContext  pRenderContext) throws IOException

Assigns pRenderContext as the render engine this queue should be associated with.

Parameters
pRenderContexthdrcRenderEngineContext
Returns
int - Should be 0 if successful.
Exceptions
IOException
int com.fovia.hdrc.hdrcRenderQueue.setRenderParams ( RENDER_PARAMS  rp) throws IOException

Enqueues a RENDER_PARAMS to be set. Note that the settings are not set immediately. Also, this queue has the possibility of being collapsed some. For example, if you set the view very quickly in response to mouse events, some of the move events may be consolidated if the frame rate of the engine is not as fast as the mouse update. Information is never lost in this process.

Parameters
rpRENDER_PARAMS
Returns
int
Exceptions
IOException

Implements com.fovia.hdrc.hdrcIRenderParamsReceiver.

Referenced by com.fovia.hdrc.hdrcRenderQueue.setRenderParams().

int com.fovia.hdrc.hdrcRenderQueue.setRenderParams ( RENDER_PARAMS  rp,
POLYGON_PARAMS  pp 
) throws IOException

Enqueues a RENDER_PARAMS to be set. Note that the settings are not set immediately. Also, this queue has the possibility of being collapsed some. For example, if you set the view very quickly in response to mouse events, some of the move events may be consolidated if the frame rate of the engine is not as fast as the mouse update. Information is never lost in this process.

This overload also adds a set of hdrcVertexCallListContext objects to be added to the engine.

Parameters
rpThe input RENDER_PARAMS
ppA POLYGON_PARAMS structure containing hdrcVertexCallList objects to be added to the engine.
Returns
int
Exceptions
IOException

Implements com.fovia.hdrc.hdrcIRenderParamsReceiver.

References com.fovia.hdrc.hdrcRenderQueue.setRenderParams().

int com.fovia.hdrc.hdrcRenderQueue.setRenderParams ( RENDER_PARAMS  rp,
POLYGON_PARAMS  pp,
boolean  bNotifyLinked 
) throws IOException

Enqueues a RENDER_PARAMS to be set. Note that the settings are not set immediately. Also, this queue has the possibility of being collapsed some. For example, if you set the view very quickly in response to mouse events, some of the move events may be consolidated if the frame rate of the engine is not as fast as the mouse update. Information is never lost in this process.

This overload also adds a set of hdrcVertexCallListContext objects to be added to the engine.

Parameters
rpThe input RENDER_PARAMS
ppA POLYGON_PARAMS structure containing hdrcVertexCallList objects to be added to the engine.
bNotifyLinkedIf true, notifies linked windows of the RENDER_PARAMS update.
Returns
int
Exceptions
IOException

Implements com.fovia.hdrc.hdrcIRenderParamsReceiver.

References com.fovia.hdrc.hdrcRenderQueue.setRenderParams().

int com.fovia.hdrc.hdrcRenderQueue.stopThreads ( ) throws InterruptedException

Stops the currently running threads on this object.

Exceptions
InterruptedException
int com.fovia.hdrc.hdrcRenderQueue.updateImage ( VOLVISIMAGE  imm)

Public only for legacy reasons.

Parameters
immVOLVISIMAGE

Referenced by com.fovia.hdrc.hdrcRenderQueue.updateImage().

int com.fovia.hdrc.hdrcRenderQueue.updateImage ( VOLVISIMAGE  imm,
RENDER_PARAMS  rp 
)

Public only for legacy reasons.

References com.fovia.hdrc.hdrcRenderQueue.updateImage().

int com.fovia.hdrc.hdrcRenderQueue.waitForParamsToBeSet ( )

Will wait on the current thread until we've applied all params waiting in the queue. If params keep being added by some other thread, you will lock this thread until they stop being applied.