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

Classes

class  GET_CURVED_REFORMAT_RESULT
 

Public Member Functions

int applyVolumetricShadowMap (hdrcVolumeShadowContext pShadow)
 
int checkChannel () throws IOException
 
int fastSwap (hdrcVolumeDataContext volumeData, hdrcOctreeContext octree) throws IOException
 
FIND_PATH_RESULT findPath (VECTOR3D pStart, VECTOR3D pFinish, FIND_PATH_PARAMS params) throws IOException
 
FIND_PATH_RESULT finishJobFindPath (long job) throws IOException
 
boolean getAdaptiveJPEGStatus () throws IOException
 
MATRIX44D[] getCurvedMPRPath ()
 
hdrcVolumeDataContext getCurvedReformat (int numProjPlanesPerSlice, int numSlices, int ppWidth, int ppHeight, int measurementSlice, float Zoom, MATRIX44D arrProjPlanes[][], int type) throws IOException
 
GET_CURVED_REFORMAT_RESULT getCurvedReformatEx (boolean bCreateOctree, int smoothType, int numProjPlanesPerSlice, int numSlices, int ppWidth, int ppHeight, int measurementSlice, float Zoom, MATRIX44D arrProjPlanes[][], int type) throws IOException
 
native int getCurvedReformatEx (long nid, long ids[], boolean bCreateOctree, int smoothType, int numProjPlanesPerSlice, int numSlices, int ppWidth, int ppHeight, int measurementSlice, float Zoom, MATRIX44D arrProjPlanes[][], int type) throws IOException
 
int getFramesPerPhase ()
 
long getID ()
 
int getMandibleTrace (VECTOR3D left, VECTOR3D right, VECTOR3D front, VECTOR3D points[], RENDER_PARAMS rp) throws IOException
 
long GetNID ()
 
long getNID ()
 
hdrcOctreeContext getOctreeContext ()
 
int getPointVisibility (VERTEX3D vtr[], POINTVISIBLEINFO pvi[], int Num) throws IOException
 
int getPointVisibility (VECTOR3D vtr[], POINTVISIBLEINFO pvi[], int Num) throws IOException
 
hdrcRenderEngineContext getRenderEngineContext ()
 
RENDER_PARAMS getRenderParams () throws IOException
 
RENDER_PARAMS getRenderParams (boolean bIncludeQueuedParams) throws IOException
 
RENDER_PARAMS getRenderParamsCached ()
 
hdrcServerContext getServerContext ()
 
RENDER_RANGE_PARAMS[] getTransferFunction (int index) throws IOException
 
int getTransferFunctionCount ()
 
hdrcVolumeDataContext getVolumeDataContext ()
 
boolean isRenderingFinished () throws IOException
 
void PrimerEnter () throws IOException
 
void PrimerExit (VOLVISIMAGE im) throws IOException
 
int projectPoint (VERTEX3D vtx[], POINT pt[], int Num) throws IOException
 
int projectPoint (VECTOR3D vtx[], POINT pt[], int Num) throws IOException
 
int projectVolumetricShadow () throws IOException
 
int releaseSessionResources () throws IOException
 
int render (VOLVISIMAGE imReq, VOLVISIMAGE imRes) 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 renderShadowLight ()
 
int renderStreamed (VOLVISIMAGE prevImage, RENDER_PARAMS nextImageParams, VOLVISIMAGE nextImage) throws IOException
 
int renderStreamed (VOLVISIMAGE prevImage, RENDER_PARAMS nextImageParams, VOLVISIMAGE nextImage, boolean bGetFinishedFrame) throws IOException
 
int renderStreamed (VOLVISIMAGE prevImage, RENDER_PARAMS nextImageParams, POLYGON_PARAMS pp, VOLVISIMAGE nextImage, boolean bGetFinishedFrame) throws IOException
 
int renderStreamed (VOLVISIMAGE prevImage, RENDER_PARAMS nextImageParams, POLYGON_PARAMS pp, int TFsToSet, RENDER_RANGE_PARAMS rrps[][], VOLVISIMAGE nextImage, boolean bGetFinishedFrame) throws IOException
 
int renderStreamed (VOLVISIMAGE prevImage, RENDER_PARAMS nextImageParams, POLYGON_PARAMS pp, long TFsToSet[], RENDER_RANGE_PARAMS rrps[][], VOLVISIMAGE nextImage, boolean bGetFinishedFrame) throws IOException
 
int setAdaptiveJPEGCompressionParam (ADAPTIVEJPEGPARAMS params) throws IOException
 
int setAdaptiveJPEGStatus (boolean status) throws IOException
 
int setAutonavigating (boolean bNav, double speed)
 
int setCurvedMPRPath (int numProjPlanes, MATRIX44D arrProjPlanes[], int type) throws IOException
 
int setFastPolygonsEnabled (boolean bEnabled)
 
int setFramesPerPhase (int frames) throws IOException
 
int setPhase (int phase) throws IOException
 
int setPolygonCrossSectionLineParameters (double width, int r, int g, int b, int a)
 
int setRenderParams (RENDER_PARAMS rp) throws IOException
 
int setRenderParams (RENDER_PARAMS rp, POLYGON_PARAMS pp) throws IOException
 
int setRenderParams (RENDER_PARAMS rp, POLYGON_PARAMS pp, int TFsToSet, RENDER_RANGE_PARAMS rrp[][]) throws IOException
 
int setRenderParams (RENDER_PARAMS rp, POLYGON_PARAMS pp, long TFsToSet[], RENDER_RANGE_PARAMS rrp[][]) throws IOException
 
int setRenderParams (RENDER_PARAMS rp, boolean bNotifyLinked) throws IOException
 
int setRenderParams (RENDER_PARAMS rp, POLYGON_PARAMS pp, boolean bNotifyLinked) throws IOException
 
int setRenderParamsRenderAndSendPrevFrame (long imgID, VOLVISIMAGE imRes, RENDER_PARAMS rp, VOLVISIMAGE imReq) throws IOException
 
int setRenderParamsRenderAndSendPrevFrame (long imgID, VOLVISIMAGE imRes, RENDER_PARAMS rp, POLYGON_PARAMS pp, VOLVISIMAGE imReq) throws IOException
 
int setRenderParamsRenderAndSendPrevFrame (long imgID, VOLVISIMAGE imRes, RENDER_PARAMS rp, POLYGON_PARAMS pp, int TFsToSet, RENDER_RANGE_PARAMS rrps[][], VOLVISIMAGE imReq) throws IOException
 
int setRenderParamsRenderAndSendPrevFrame (long imgID, VOLVISIMAGE imRes, RENDER_PARAMS rp, POLYGON_PARAMS pp, long TFsToSet[], RENDER_RANGE_PARAMS rrps[][], VOLVISIMAGE imReq) throws IOException
 
int setRenderParamsRenderRead (RENDER_PARAMS rp, VOLVISIMAGE imReq, VOLVISIMAGE imRes) throws IOException
 
int setSegmentationBoundaries (long masks[]) throws IOException
 
int setTransferFunction (int index, RENDER_RANGE_PARAMS arrParams[]) throws IOException
 
int setVertexColorMapTransferFunction (RENDER_RANGE_PARAMS rrp[])
 
int setViewMode (int mode) throws IOException
 
int setVolumeData (hdrcVolumeDataContext Volume, hdrcOctreeContext Octree) throws IOException
 
int setVolumeData4D (hdrcVolumeDataContext Volume[], hdrcOctreeContext Octree[], int numVolumes) throws IOException
 
int shootRay (POINT pt[], RAYSTOPINFO rsi[], int Num) throws IOException
 
int shootRay (POINT pt[], VECTOR3D start[], VECTOR3D direction[], double percent, RAYSTOPINFO rsi[], int Num) throws IOException
 
int shootRayFast (POINT pt[], RAYSTOPINFO rsi[], int Num) throws IOException
 
int shootRayGetWall (POINT pt[], RAYWALLINFO rwi[], int Num) throws IOException
 
long startJobFindPath (VECTOR3D pStart, VECTOR3D pFinish, FIND_PATH_PARAMS params) throws IOException
 
long waitForPrevRender () throws IOException
 

Protected Member Functions

native int applyVolumetricShadowMap (long nid, long shadowID)
 
native int checkChannel (long id) throws IOException
 
native int fastSwap (long id, long volumeData, long octree) throws IOException
 
native int findPath (long nid, VECTOR3D pStart, VECTOR3D pFinish, FIND_PATH_PARAMS params, FIND_PATH_RESULT res) throws IOException
 
native int finishJobFindPath (long nid, long job, FIND_PATH_RESULT res) throws IOException
 
native boolean getAdaptiveJPEGStatus (long nid) throws IOException
 
native MATRIX44D[] getCurvedMPRPath (long id)
 
native int getFramesPerPhase (long nid)
 
native long getID (long nid)
 
native int getMandibleTrace (long nid, VECTOR3D left, VECTOR3D right, VECTOR3D front, VECTOR3D points[], RENDER_PARAMS rp) throws IOException
 
native long getOctreeContext (long nid)
 
native int getPointVisibility (long nid, VECTOR3D vtr[], POINTVISIBLEINFO pvi[], int Num) throws IOException
 
native int getRenderParams (long nid, RENDER_PARAMS rp) throws IOException
 
native int getTransferFunction (long nid, int index, RENDER_RANGE_PARAMS ret[]) throws IOException
 
native int getTransferFunctionCount (long nid)
 
native long getVolumeDataContext (long nid)
 
 hdrcRenderEngineContext (hdrcServerContext sc, hdrcSerializer ser, long id)
 
native boolean isRenderingFinished (long nid) throws IOException
 
native int projectPoint (long nid, VECTOR3D vtx[], POINT pt[], int Num) throws IOException
 
native int projectVolumetricShadow (long nid) throws IOException
 
native int releaseSessionResources (long nid) throws IOException
 
native int render (long nid, VOLVISIMAGE imReq, VOLVISIMAGE imRes) throws IOException
 
native int renderShadowLight (long nid)
 
int renderStreamed (long nid, VOLVISIMAGE prevImage, RENDER_PARAMS nextImageParams, POLYGON_PARAMS pp, long TFsToSet[], RENDER_RANGE_PARAMS rrps[][], VOLVISIMAGE nextImage, boolean bGetFinishedFrame) throws IOException
 
native int renderStreamed (long nid, VOLVISIMAGE prevImage, RENDER_PARAMS nextImageParams, int ppMask, long nids[], long TFsToSet[], RENDER_RANGE_PARAMS rrps[][], VOLVISIMAGE nextImage, boolean bGetFinishedFrame) throws IOException
 
native int setAdaptiveJPEGCompressionParam (long nid, ADAPTIVEJPEGPARAMS params) throws IOException
 
native int setAdaptiveJPEGStatus (long nid, boolean status) throws IOException
 
native int setCurvedMPRPath (long nid, int numProjPlanes, MATRIX44D arrProjPlanes[], int type) throws IOException
 
native int setFastPolygonsEnabled (long nid, boolean bEnabled)
 
native int setFramesPerPhase (long nid, int frames) throws IOException
 
native int setPhase (long nid, int phase) throws IOException
 
native int setPolygonCrossSectionLineParameters (long nid, double width, int r, int g, int b, int a)
 
int setRenderParams (long nid, RENDER_PARAMS rp, POLYGON_PARAMS pp, long TFsToSet[], RENDER_RANGE_PARAMS rrp[][]) throws IOException
 
native int setRenderParams (long nid, RENDER_PARAMS rp, int ppMask, long callListIDs[], long TFsToSet[], RENDER_RANGE_PARAMS rrp[][]) throws IOException
 
int setRenderParamsRenderAndSendPrevFrame (long nid, long imgID, VOLVISIMAGE imRes, RENDER_PARAMS rp, POLYGON_PARAMS pp, long TFsToSet[], RENDER_RANGE_PARAMS rrps[][], VOLVISIMAGE imReq) throws IOException
 
native int setRenderParamsRenderAndSendPrevFrame (long nid, long imgID, VOLVISIMAGE imRes, RENDER_PARAMS rp, int ppMask, long nids[], long TFsToSet[], RENDER_RANGE_PARAMS rrps[][], VOLVISIMAGE imReq) throws IOException
 
native int setRenderParamsRenderRead (long nid, RENDER_PARAMS rp, VOLVISIMAGE imReq, VOLVISIMAGE imRes) throws IOException
 
native int setSegmentationBoundaries (long nid, long masks[]) throws IOException
 
native int setTransferFunction (long nid, int index, RENDER_RANGE_PARAMS arrParams[]) throws IOException
 
native int setVertexColorMapTransferFunction (long nid, RENDER_RANGE_PARAMS rrp[])
 
native int setViewMode (long nid, int mode) throws IOException
 
native int setVolumeData (long nid, long Volume, long Octree) throws IOException
 
native int setVolumeData4D (long nid, long Volume[], long Octree[], int numVolumes) throws IOException
 
native int shootRay (long nid, POINT pt[], RAYSTOPINFO rsi[], int Num) throws IOException
 
native int shootRay (long nid, POINT pt[], VECTOR3D start[], VECTOR3D direction[], double percent, RAYSTOPINFO rsi[], int Num) throws IOException
 
native int shootRayFast (long nid, POINT pt[], RAYSTOPINFO rsi[], int Num) throws IOException
 
native int shootRayGetWall (long nid, POINT pt[], RAYWALLINFO rsi[], int Num) throws IOException
 
native long startJobFindPath (long nid, VECTOR3D pStart, VECTOR3D pFinish, FIND_PATH_PARAMS params) throws IOException
 
native long waitForPrevRender (long nid) throws IOException
 

Static Protected Member Functions

static long[] getPolygonParamsNIDs (POLYGON_PARAMS pp)
 

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
 
- Static Public Attributes inherited from com.fovia.hdrcsrv.clientConfig
static final boolean NO_NORMALIZE = false
 

Detailed Description

Class that abstracts a render engine. In most cases, you would never access this object directly. It is much simpler to use a hdrcRenderQueue to maintain the state of this object. This object is created by hdrcServerContext.

Member Function Documentation

int com.fovia.hdrc.hdrcRenderEngineContext.checkChannel ( ) throws IOException

Does a simple test of the network channel to "ping" the server.

Returns
int - 0 if successful.
Exceptions
IOException
int com.fovia.hdrc.hdrcRenderEngineContext.fastSwap ( hdrcVolumeDataContext  volumeData,
hdrcOctreeContext  octree 
) throws IOException

Performs a server side request to swap from one volume to another quickly. The new volume must have the same dimensions, spacing, orientation, and skew.

Parameters
volumeData
octree
Returns
Exceptions
IOException
FIND_PATH_RESULT com.fovia.hdrc.hdrcRenderEngineContext.findPath ( VECTOR3D  pStart,
VECTOR3D  pFinish,
FIND_PATH_PARAMS  params 
) throws IOException

Attempts to find a path between two points in the volume using either static or dynamic upper and lower thresholds for determining the pathway.

Parameters
pStartThe start point for the path finding routine. Must be non-NULL.
pFinishThe finish point for the path finding routine. Must be non-NULL.
paramsThe parameters for the path finding routine. If NULL, the values set in the default constructor for FIND_PATH_PARAMS are used. See the FIND_PATH_PARAMS description for details on each of the parameters.
Returns
FIND_PATH_RESULT != null if successful.

References com.fovia.hdrcsrv.hdrcDefines.S_OK.

FIND_PATH_RESULT com.fovia.hdrc.hdrcRenderEngineContext.finishJobFindPath ( long  job) throws IOException

Placeholder()

References com.fovia.hdrcsrv.hdrcDefines.S_OK.

MATRIX44D [] com.fovia.hdrc.hdrcRenderEngineContext.getCurvedMPRPath ( )

Returns the current curved MPR path.

Returns
An arry of MATRIX44D objects designating the curved MPR positions.
Exceptions
IOException
hdrcVolumeDataContext com.fovia.hdrc.hdrcRenderEngineContext.getCurvedReformat ( int  numProjPlanesPerSlice,
int  numSlices,
int  ppWidth,
int  ppHeight,
int  measurementSlice,
float  Zoom,
MATRIX44D  arrProjPlanes[][],
int  type 
) throws IOException

Creates a new volume from several curved MPR specifications. This function may be used to reformat a volume so that a curved render may have depth as well. The resultant volume may then be rendered in any available rendering mode. Viewing the volume axially will give the view you would get from setCurvedMPRPAth(). See setCurvedMPRPAth() for more information on how the arrProjPlanes matrices should be specified.

Parameters
numProjPlanesPerSliceThe number of positions that make up the curve for each slice.
numSlicesThe number of slices
ppWidthOutput volume width
ppHeightOutput volume height
measurementSliceThis is the index (0-based) of the slice to specify for accurate measurement. For example, if you specify 3 the fourth image in the volume will have the property that pixels in the X and Y directions will be accurately represented in millimeters.
ZoomThe number of pixels per voxel in the non-curved dimension. If this is -1, the pixels per voxel is calculated based upon the length of the curve.
arrProjPlanesThe projecton plane positions for each slice. The dimensions are arrProjPlanes[slice][curvePoint].
typeWhich axis is going to be non-linear on every slice?
Returns
The resultant volume data.
Exceptions
IOException

References com.fovia.hdrc.hdrcRenderEngineContext.getCurvedReformatEx().

GET_CURVED_REFORMAT_RESULT com.fovia.hdrc.hdrcRenderEngineContext.getCurvedReformatEx ( boolean  bCreateOctree,
int  smoothType,
int  numProjPlanesPerSlice,
int  numSlices,
int  ppWidth,
int  ppHeight,
int  measurementSlice,
float  Zoom,
MATRIX44D  arrProjPlanes[][],
int  type 
) throws IOException

Creates a new volume from several curved MPR specifications. This function may be used to reformat a volume so that a curved render may have depth as well. The resultant volume may then be rendered in any available rendering mode. Viewing the volume axially will give the view you would get from setCurvedMPRPAth(). See setCurvedMPRPAth() for more information on how the arrProjPlanes matrices should be specified.

Parameters
bCreateOctreeIf H_TRUE this function will create an ocrtree for the IVolumeDataContext object pointed to by pData. If H_FALSE, no octree will be created.
smoothTypeOne of the SMOOTH3D_* values to set the smothing mode, if any, to be applied to the created octree. This is only relavent if bCreateOctree is set to H_TRUE.
numProjPlanesPerSliceThe number of positions that make up the curve for each slice.
numSlicesThe number of slices
ppWidthOutput volume width
ppHeightOutput volume height
measurementSliceThis is the index (0-based) of the slice to specify for accurate measurement. For example, if you specify 3 the fourth image in the volume will have the property that pixels in the X and Y directions will be accurately represented in millimeters.
ZoomThe number of pixels per voxel in the non-curved dimension. If this is -1, the pixels per voxel is calculated based upon the length of the curve.
arrProjPlanesThe projecton plane positions for each slice. The dimensions are arrProjPlanes[slice][curvePoint].
typeWhich axis is going to be non-linear on every slice?
Returns
The resultant volume data.
Exceptions
IOException

Referenced by com.fovia.hdrc.hdrcRenderEngineContext.getCurvedReformat().

int com.fovia.hdrc.hdrcRenderEngineContext.getFramesPerPhase ( )

Returns the number of frames per phase set on this engine. In 4D rendering, it is possible to tell the engine to automatically advance to the next phase of the 4D dataset after a certain number of frames have been rendered. 0 means the phase will not be advanced. See setFramesPerPhase().

Returns
The current number of frames per phase.
long com.fovia.hdrc.hdrcRenderEngineContext.getID ( )

Integer representation of the server object.

long com.fovia.hdrc.hdrcRenderEngineContext.getNID ( )

Internal utility function.

Returns
ID of native SDK object.
hdrcOctreeContext com.fovia.hdrc.hdrcRenderEngineContext.getOctreeContext ( )

For legacy support.

Returns
hdrcServerContext
int com.fovia.hdrc.hdrcRenderEngineContext.getPointVisibility ( VERTEX3D  vtr[],
POINTVISIBLEINFO  pvi[],
int  Num 
) throws IOException

Project 3D coordinates (in patient system coordinates) onto the rendering plane. Output points are relative to the center of the rendering plane, with X axis increasing along the raster, Y axis increasing along rows. Additionally, the opacity of the specified point is returned. This information may be used to render 3D primitives on a video card with relatively accurate interaction with the volume.

Parameters
vtrList of points to get visibility info.
pviList of POINTVISIBLEINFO objects to receive the visibility info.
NumNumber of points to transform.
Returns
int
Exceptions
IOException

References com.fovia.hdrcsrv.hdrcDefines.E_INVALIDARG.

Referenced by com.fovia.hdrc.hdrcRenderEngineContext.getPointVisibility().

int com.fovia.hdrc.hdrcRenderEngineContext.getPointVisibility ( VECTOR3D  vtr[],
POINTVISIBLEINFO  pvi[],
int  Num 
) throws IOException

Project 3D coordinates (in patient system coordinates) onto the rendering plane. Output points are relative to the center of the rendering plane, with X axis increasing along the raster, Y axis increasing along rows. Additionally, the opacity of the specified point is returned. This information may be used to render 3D primitives on a video card with relatively accurate interaction with the volume.

Parameters
vtrList of points to get visibility info.
pviList of POINTVISIBLEINFO objects to receive the visibility info.
NumNumber of points to transform.
Returns
int
Exceptions
IOException

References com.fovia.hdrc.hdrcRenderEngineContext.getPointVisibility().

hdrcRenderEngineContext com.fovia.hdrc.hdrcRenderEngineContext.getRenderEngineContext ( )

Returns a reference to the current object.

Returns
hdrcRenderEngineContext

Implements com.fovia.hdrc.hdrcIRenderParamsReceiver.

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

Returns the current RENDER_PARAMS for this engine. This call will retrieve the RENDER_PARAMS from the server. Consider using Cached() if appropriate.

Returns
RENDER_PARAMS
Exceptions
IOException

Implements com.fovia.hdrc.hdrcIRenderParamsReceiver.

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

RENDER_PARAMS com.fovia.hdrc.hdrcRenderEngineContext.getRenderParams ( boolean  bIncludeQueuedParams) throws IOException

Returns the current RENDER_PARAMS for this engine. This call will retrieve the RENDER_PARAMS from the server. Consider using getRenderParamsCached() if appropriate.

Parameters
bIncludeQueuedParams- If set to TRUE, the returned RENDER_PARAMS structure will include paramaters that have been chached but not yet applied. If set to FALSE, only applied paramaters will be returned.
Returns
RENDER_PARAMS
Exceptions
IOException

Implements com.fovia.hdrc.hdrcIRenderParamsReceiver.

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

RENDER_PARAMS com.fovia.hdrc.hdrcRenderEngineContext.getRenderParamsCached ( )

Returns the current RENDER_PARAMS for this engine. This call will return the cached RENDER_PARAMS structure on the client without retrieving the applied RENDER_PARAMS from the server.

Returns
RENDER_PARAMS
Exceptions
IOException

Implements com.fovia.hdrc.hdrcIRenderParamsReceiver.

hdrcServerContext com.fovia.hdrc.hdrcRenderEngineContext.getServerContext ( )

For legacy support.

Returns
hdrcServerContext
RENDER_RANGE_PARAMS [] com.fovia.hdrc.hdrcRenderEngineContext.getTransferFunction ( int  index) throws IOException

Gets the transfer function at the designated index in the form of an array of RENDER_RANGE_PARAMS. Use index values 0-7 for transfer functions 1-8.

Parameters
index- A value in the range of 0-7 for transfer functions 1-8.
Returns
- An array of RENDER_RANGE_PARAMS objects which define the transfer function, or null if no transfer function has been set for that index.
int com.fovia.hdrc.hdrcRenderEngineContext.getTransferFunctionCount ( )

Returns the number of transfer functions set for this engine.

Returns
The number of transfer functions set for this engine.
hdrcVolumeDataContext com.fovia.hdrc.hdrcRenderEngineContext.getVolumeDataContext ( )

For legacy support.

Returns
hdrcServerContext
boolean com.fovia.hdrc.hdrcRenderEngineContext.isRenderingFinished ( ) throws IOException

Returns true if the rendering command is finished OR there is no rendering command in progress. Otherwise, returns false.

Returns
boolean
Exceptions
IOException
void com.fovia.hdrc.hdrcRenderEngineContext.PrimerEnter ( ) throws IOException

For legacy support only.

Exceptions
IOException
void com.fovia.hdrc.hdrcRenderEngineContext.PrimerExit ( VOLVISIMAGE  im) throws IOException

For legacy support only.

Parameters
imVOLVISIMAGE
Exceptions
IOException
int com.fovia.hdrc.hdrcRenderEngineContext.projectPoint ( VERTEX3D  vtx[],
POINT  pt[],
int  Num 
) throws IOException

Takes 3D points in patient coordinates and returns the 2D points that the locations would be projected onto the projection plane.

Parameters
vtx3D points.
pt2D points in which we should store our results.
Numnumber of points being projected.
Returns
int - 0 if successful
Exceptions
IOException

References com.fovia.hdrcsrv.hdrcDefines.E_INVALIDARG.

Referenced by com.fovia.hdrc.hdrcRenderEngineContext.projectPoint().

int com.fovia.hdrc.hdrcRenderEngineContext.projectPoint ( VECTOR3D  vtx[],
POINT  pt[],
int  Num 
) throws IOException

Takes 3D points in patient coordinates and returns the 2D points that the locations would be projected onto the projection plane.

Parameters
vtx3D points.
pt2D points in which we should store our results.
Numnumber of points being projected.
Returns
int - 0 if successful
Exceptions
IOException

References com.fovia.hdrc.hdrcRenderEngineContext.projectPoint().

int com.fovia.hdrc.hdrcRenderEngineContext.projectVolumetricShadow ( ) throws IOException

Projects a volume shadow from the current view location. This is implemented by setting the parts of the volume to be shadowed to the second transfer function. The second TF should then be slightly darker than the first.

Returns
Exceptions
IOException
int com.fovia.hdrc.hdrcRenderEngineContext.releaseSessionResources ( ) throws IOException

Call this if you want to free this object before disconnecting.

Returns
int - 0 if successful
Exceptions
IOException
int com.fovia.hdrc.hdrcRenderEngineContext.render ( VOLVISIMAGE  imReq,
VOLVISIMAGE  imRes 
) throws IOException

Renders the requested image requirements into the result image structure.

Parameters
imReqRequested image requirements.
imResResult image structure.
Returns
int - 0 if successful.
Exceptions
IOException
int com.fovia.hdrc.hdrcRenderEngineContext.renderFinal ( ) throws IOException
int com.fovia.hdrc.hdrcRenderEngineContext.renderFinal ( boolean  bIgnoreParams,
int  paramsToIgnore 
) throws IOException
int com.fovia.hdrc.hdrcRenderEngineContext.renderFinal ( boolean  bNotifyListeners) throws IOException
int com.fovia.hdrc.hdrcRenderEngineContext.renderFinal ( boolean  bNotifyListeners,
boolean  bIgnoreParams,
int  paramsToIgnore 
) throws IOException
int com.fovia.hdrc.hdrcRenderEngineContext.renderStreamed ( VOLVISIMAGE  prevImage,
RENDER_PARAMS  nextImageParams,
VOLVISIMAGE  nextImage 
) throws IOException
int com.fovia.hdrc.hdrcRenderEngineContext.renderStreamed ( VOLVISIMAGE  prevImage,
RENDER_PARAMS  nextImageParams,
VOLVISIMAGE  nextImage,
boolean  bGetFinishedFrame 
) throws IOException
int com.fovia.hdrc.hdrcRenderEngineContext.renderStreamed ( VOLVISIMAGE  prevImage,
RENDER_PARAMS  nextImageParams,
POLYGON_PARAMS  pp,
VOLVISIMAGE  nextImage,
boolean  bGetFinishedFrame 
) throws IOException

Call that implements a streamed render. When you call this function, the server retrieves the previously rendered frame (from the previous renderStreamed). It sets the params to nextImageParams and begins rendering the next frame. Then, while that is going on, it compresses (if necessary) the previous frame and transfers it to the client. That way, rendering continues while compression and TCP/IP transfer happens.

Do NOT expect prevImage to contain data. The first time you call this function it won't contain data. Check to see if VOLVISIMAGE.Data is non-null.

Parameters
prevImageStructure to recieve the previous image.
nextImageParamsParams for the next frame.
ppPolygon params for the next frame.
nextImageImage params for the next frame.
bGetFinishedFrameIf true, retrieves the finished frame. Otherwise, discards it on the server side.
Returns
int - 0 if successful.
Exceptions
IOException

References com.fovia.hdrc.hdrcRenderEngineContext.renderStreamed().

int com.fovia.hdrc.hdrcRenderEngineContext.renderStreamed ( VOLVISIMAGE  prevImage,
RENDER_PARAMS  nextImageParams,
POLYGON_PARAMS  pp,
int  TFsToSet,
RENDER_RANGE_PARAMS  rrps[][],
VOLVISIMAGE  nextImage,
boolean  bGetFinishedFrame 
) throws IOException
int com.fovia.hdrc.hdrcRenderEngineContext.renderStreamed ( VOLVISIMAGE  prevImage,
RENDER_PARAMS  nextImageParams,
POLYGON_PARAMS  pp,
long  TFsToSet[],
RENDER_RANGE_PARAMS  rrps[][],
VOLVISIMAGE  nextImage,
boolean  bGetFinishedFrame 
) throws IOException
int com.fovia.hdrc.hdrcRenderEngineContext.renderStreamed ( long  nid,
VOLVISIMAGE  prevImage,
RENDER_PARAMS  nextImageParams,
POLYGON_PARAMS  pp,
long  TFsToSet[],
RENDER_RANGE_PARAMS  rrps[][],
VOLVISIMAGE  nextImage,
boolean  bGetFinishedFrame 
) throws IOException
protected
native int com.fovia.hdrc.hdrcRenderEngineContext.renderStreamed ( long  nid,
VOLVISIMAGE  prevImage,
RENDER_PARAMS  nextImageParams,
int  ppMask,
long  nids[],
long  TFsToSet[],
RENDER_RANGE_PARAMS  rrps[][],
VOLVISIMAGE  nextImage,
boolean  bGetFinishedFrame 
) throws IOException
protected

Placeholder for renderStreamed()

int com.fovia.hdrc.hdrcRenderEngineContext.setAdaptiveJPEGCompressionParam ( ADAPTIVEJPEGPARAMS  params) throws IOException

If the adaptive JPEG feature is turend on with setAdaptiveJPEGStatus(), sets the ADAPTIVEJPEGPARAMS used to determine the compression level.

Parameters
status- if TRUE, the adaptive JPEG feature is turned on. If FALSE, the adaptive JPEG feature is not used.
Exceptions
IOException
int com.fovia.hdrc.hdrcRenderEngineContext.setAdaptiveJPEGStatus ( boolean  status) throws IOException

Turns the adaptive JPEG feature on and off. This feature allows the engine to adaptively control the level of JPEG compression used to transmit compressed images from the server.

Parameters
status- if TRUE, the adaptive JPEG feature is turned on. If FALSE, the adaptive JPEG feature is not used.
Exceptions
IOException
int com.fovia.hdrc.hdrcRenderEngineContext.setAutonavigating ( boolean  bNav,
double  speed 
)

Turns autonavigation on and off. This feature will autonavigate the viewpoint through a blood vessel or similar structure.

Parameters
bNav- If TRUE, autonavigation is turned on. If FALSE, autonavigation is turned off.
speed- The speed with which the viewpoint moves through the vessel. This base speed depends on the size of the vessel.
Returns
RENDER_PARAMS

Implements com.fovia.hdrc.hdrcIRenderParamsReceiver.

int com.fovia.hdrc.hdrcRenderEngineContext.setCurvedMPRPath ( int  numProjPlanes,
MATRIX44D  arrProjPlanes[],
int  type 
) throws IOException

Sets the curved MPR path to use. Essentially, the X vector (m11,m21,m31) in the projection plane describes the direction for the linear slice to take at every interpolated point on the curve. The offset (m14,m24,m34) in the projection plane describes where each point is. From this description, the points you specify are interpolated via Catmull-Rom spline interpolation. The spacing between interpolated points is dictated by the image size. NOTE: You call this function every time you switch to RT_MPR_CURVED. It does not persist across other render types.

Parameters
numProjPlanesNumbers of projection plane positions that make up the curve.
arrProjPlanesProjection plane positions that describe what we should interpolate between.
typeWhich axis is going to be non-linear?
Returns
Exceptions
IOException

Implements com.fovia.hdrc.hdrcIRenderParamsReceiver.

int com.fovia.hdrc.hdrcRenderEngineContext.setFastPolygonsEnabled ( boolean  bEnabled)

Sets the engine to use fast polygons mode. In this mode changes to hdrcVertexCallListContext objects are rendered more quickly. However, no changes to the dataset are permitted while in this mode. This means that no changes to the position, orientation, or any other RENDER_PARAMS fields are permitted.

Parameters
bEnabledIf set to H_TRUE, engine runs in fast polygon mode. If set to H_FALSE, engine runs in normal mode.
int com.fovia.hdrc.hdrcRenderEngineContext.setFramesPerPhase ( int  frames) throws IOException

Sets the number of frames to render before moving on to the next phase. Set this to 0 to keep the current phase indefinitely.

Parameters
frames- The number of frames to render before moving on to the next phase.
Exceptions
IOException
int com.fovia.hdrc.hdrcRenderEngineContext.setPhase ( int  phase) throws IOException

If the control was initialized for 4D rendering, this sets the view to the specified phase.

Parameters
phase
Returns
Exceptions
IOException
int com.fovia.hdrc.hdrcRenderEngineContext.setRenderParams ( RENDER_PARAMS  rp) throws IOException

Sets the RENDER_PARAMS for this engine.

Parameters
rpThe RENDER_PARAMS to be set.
Returns
int - 0 if successful.
Exceptions
IOException

Implements com.fovia.hdrc.hdrcIRenderParamsReceiver.

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

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

Sets the RENDER_PARAMS and hdrcVertexCallListContext objects for this engine.

Parameters
rpThe RENDER_PARAMS to be set.
ppA POLYGON_PARAMS structure designating the polygon objects to be applied to this engine.
Returns
int - 0 if successful.
Exceptions
IOException

Implements com.fovia.hdrc.hdrcIRenderParamsReceiver.

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

int com.fovia.hdrc.hdrcRenderEngineContext.setRenderParams ( RENDER_PARAMS  rp,
POLYGON_PARAMS  pp,
int  TFsToSet,
RENDER_RANGE_PARAMS  rrp[][] 
) throws IOException

Sets the RENDER_PARAMS, hdrcVertexCallListContext objects, and transfer functions for this engine.

Parameters
rpThe RENDER_PARAMS to be set.
ppA POLYGON_PARAMS structure designating the polygon objects to be applied to this engine.
TFsToSetA bitmask designating which transfer functions the the TFs defined in rpp are to be applied to.
rrpAn array of RENDER_RANGE_PARAMS defining the transfer functions to be set. The dimensions of the array depend on how many transfer functions are being set and how each transfer function is defined.
Returns
int - 0 if successful.
Exceptions
IOException

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

int com.fovia.hdrc.hdrcRenderEngineContext.setRenderParams ( RENDER_PARAMS  rp,
POLYGON_PARAMS  pp,
long  TFsToSet[],
RENDER_RANGE_PARAMS  rrp[][] 
) throws IOException

Sets the RENDER_PARAMS, hdrcVertexCallListContext objects, and transfer functions for this engine. This version of setRenderParams() is for use with the 256 TF build.

Parameters
rpThe RENDER_PARAMS to be set.
ppA POLYGON_PARAMS structure designating the polygon objects to be applied to this engine.
TFsToSetAn array of long ints containing a bitmask designating which transfer functions the the TFs defined in rpp are to be applied to.
rrpAn array of RENDER_RANGE_PARAMS defining the transfer functions to be set. The dimensions of the array depend on how many transfer functions are being set and how each transfer function is defined.
Returns
int - 0 if successful.
Exceptions
IOException

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

int com.fovia.hdrc.hdrcRenderEngineContext.setRenderParams ( RENDER_PARAMS  rp,
boolean  bNotifyLinked 
) throws IOException

Sets the RENDER_PARAMS for this engine. This function will also notify linked hdrcRenderControl windows of updates to the RENDER_PARAMS.

Parameters
rpThe RENDER_PARAMS to be set.
Returns
int - 0 if successful.
Exceptions
IOException

Implements com.fovia.hdrc.hdrcIRenderParamsReceiver.

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

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

Sets the RENDER_PARAMS and hdrcVertexCallListContext objects for this engine. This function will also notify linked hdrcRenderControl windows of updates to the RENDER_PARAMS.

Parameters
rpThe RENDER_PARAMS to be set.
ppA POLYGON_PARAMS structure designating the polygon objects to be applied to this engine.
Returns
int - 0 if successful.
Exceptions
IOException

Implements com.fovia.hdrc.hdrcIRenderParamsReceiver.

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

int com.fovia.hdrc.hdrcRenderEngineContext.setRenderParamsRenderAndSendPrevFrame ( long  imgID,
VOLVISIMAGE  imRes,
RENDER_PARAMS  rp,
POLYGON_PARAMS  pp,
VOLVISIMAGE  imReq 
) throws IOException

As the name implies, set's the render params, starts a render, then compresses (if requested) and sends the previous frame.

Parameters
imgIDReturn value from waitForPrevRender()
imResInformation about the image to return.
rpNext frame parameters.
ppNext frame polygon parameters.
imReqInformation about the next frame's image.
Returns
Exceptions
IOException
int com.fovia.hdrc.hdrcRenderEngineContext.setRenderParamsRenderRead ( RENDER_PARAMS  rp,
VOLVISIMAGE  imReq,
VOLVISIMAGE  imRes 
) throws IOException

Flexible function that allows the setting of rendering parameters while also rendering a frame.

Parameters
rpParameters to set.
imReqRequested image requirements.
imResResult image structure.
Returns
int - 0 if successful.
Exceptions
IOException
int com.fovia.hdrc.hdrcRenderEngineContext.setTransferFunction ( int  index,
RENDER_RANGE_PARAMS  arrParams[] 
) throws IOException

Sets the transfer function for the designated index in the form of an array of RENDER_RANGE_PARAMS. Use index values 0-7 for transfer functions 1-8.

Parameters
index- A value in the range of 0-7 for transfer functions 1-8.
arrParams- An array of RENDER_RANGE_PARAMS objects which define the transfer function.
int com.fovia.hdrc.hdrcRenderEngineContext.setViewMode ( int  mode) throws IOException

Set's the view mode. See VM_* in hdrcDefines.

Parameters
modeint
Returns
int - 0 if successful
Exceptions
IOException

Implements com.fovia.hdrc.hdrcIRenderParamsReceiver.

int com.fovia.hdrc.hdrcRenderEngineContext.setVolumeData ( hdrcVolumeDataContext  Volume,
hdrcOctreeContext  Octree 
) throws IOException

Sets the volume data for this engine. Either parameter may be null. This is important because MPR engines do not require an Octree

Parameters
VolumeThe volume data.
OctreeAn initialized octree for the previously specified volume data.
Returns
int - 0 if successful.
Exceptions
IOException
int com.fovia.hdrc.hdrcRenderEngineContext.setVolumeData4D ( hdrcVolumeDataContext  Volume[],
hdrcOctreeContext  Octree[],
int  numVolumes 
) throws IOException

Initialized a render engine for 4D rendering on the server. All data sets must be the same dimensions and orientation/skew/spacing.

Parameters
Volume
Octree
numVolumes
Returns
Exceptions
IOException
int com.fovia.hdrc.hdrcRenderEngineContext.shootRay ( POINT  pt[],
RAYSTOPINFO  rsi[],
int  Num 
) throws IOException

Shoot (cast) rays out from the projection plane and returns the XYZ coordinate of the first ray/scalar-field interaction/hit. Essentially, this ray casting procedure is identical to ray casting during image rendering so the transfer function and projection plane settings define the probe ray origin, direction and it's first interaction. Unless you are doing connectivity segmentation, you can probably call ShootRayFast instead of this function for better performance.

shootRay() can only be called when the render engine is idle. If rendering is in progress shootRay() will return E_UNEXPECTED.

Parameters
ptPoints on the projection plane.
rsiInformation about where the points hit.
NumNumber of points in the pt and rsi arrays.
Returns
int - 0 if successful.
Exceptions
IOException

Referenced by com.fovia.hdrc.interact.hdrcConnectivityAdaptor.mouseClicked(), com.fovia.hdrc.interact.hdrcPanAdapter.mousePressed(), com.fovia.hdrc.interact.hdrcOrbitAdaptor.mousePressed(), and com.fovia.hdrc.hdrcRenderEngineContext.shootRay().

int com.fovia.hdrc.hdrcRenderEngineContext.shootRay ( POINT  pt[],
VECTOR3D  start[],
VECTOR3D  direction[],
double  percent,
RAYSTOPINFO  rsi[],
int  Num 
) throws IOException

A version of the ShootRay() function that allows one to set the percentage of ray energy that must be absorbed before the ray stops. It also allows one to set the origin coordinate of the ray, and a direction of travel for the ray.

shootRay() can only be called when the render engine is idle. If rendering is in progress shootRay() will return E_UNEXPECTED.

Parameters
ptAn array of points on the projection plane from which each ray is emitted.
startAn array of starting coordinate from which each ray is emitted.
directionAn array of vectors designating the direction of travel for each ray.
percentThe percentage of ray energy that must be absorbed before the ray is considered to have stopped.
rsiInformation about where the points hit. This includes the coordinate, voxel value, and transfer function render range.
NumNumber of points in the each of the pt, start, direction, and rsi arrays.
Returns
int - 0 if successful.
Exceptions
IOException

References com.fovia.hdrc.hdrcRenderEngineContext.shootRay().

int com.fovia.hdrc.hdrcRenderEngineContext.shootRayFast ( POINT  pt[],
RAYSTOPINFO  rsi[],
int  Num 
) throws IOException

A significantly faster version of shootRay() when shooting more than one ray. The catch is that you will not get the min or max fields back in the RAYSTOPINFO. For that reason, this call is insufficient for connectivity segmentation.

shootRayFast() can only be called when the render engine is idle. If rendering is in progress shootRayFast() will return E_UNEXPECTED.

Parameters
ptPoints on the projection plane.
rsiInformation about where the points hit.
NumNumber of points.
Returns
int - 0 if successful.
Exceptions
IOException
int com.fovia.hdrc.hdrcRenderEngineContext.shootRayGetWall ( POINT  pt[],
RAYWALLINFO  rwi[],
int  Num 
) throws IOException

A version of the ShootRay() function that determines the dataset inflection points along the ray's path of trave. As a ray travels through a volume the scalar value of the voxels the ray travels through tends to increase or decrease over measurable distances. The ShootRayGetWall() method can detect the inflection points at which the slope of the voxel's scalar gradient changes. For example, as a ray travels through the volume the voxel's scalar values may increase in value, then decrease, then increase again (or vice versa). The ShootRayGetWall() method will return data at the points where the voxel values first begin to decrease and then increase again.

shootRayGetWall() can only be called when the render engine is idle. If rendering is in progress shootRayGetWall() will return E_UNEXPECTED.

Parameters
ptAn array of points on the projection plane from which each ray is emitted.
rwiAn array of RAYWALLINFO structures that contains the inflection points and a RAYSTOPINFO structure for the voxel where each ray stops.
NumNumber of points in the each of the pt and rsi arrays.
Returns
int - 0 if successful.
Exceptions
IOException
native long com.fovia.hdrc.hdrcRenderEngineContext.startJobFindPath ( long  nid,
VECTOR3D  pStart,
VECTOR3D  pFinish,
FIND_PATH_PARAMS  params 
) throws IOException
protected

Placeholder()

long com.fovia.hdrc.hdrcRenderEngineContext.waitForPrevRender ( ) throws IOException

Waits for the previously rendering frame to complete. Should be used in conjunction with setRenderParamsRenderAndSendPrevFrame(). See hdrcRenderQueue for an implementation of this streamed form of rendering.

Returns
This value is used for reference in setRenderParamsRenderAndSendPrevFrame() when the frame is to be retrieved.
Exceptions
IOException