org.eclipse.ohf.wado.client
Interface WADORequest

All Known Implementing Classes:
WADORequestImpl

public interface WADORequest

The interface defines all the possible parameters that can be transmitted in a single WADO request.

Author:
Yossi Mesika

Field Summary
static java.lang.String DICOM_MIME_TYPE
          The MIME type for DICOM objects
static java.lang.String JPEG_MIME_TYPE
          The MIME type for JPEG images
 
Method Summary
 java.lang.String generateWadoUrl(java.lang.String wadoServerPath)
          The method takes a WADORequest object and generates a valid WADO URL that contain all the parameters defined in the request.
 int getFrameNumber()
           
 int getImageQuality()
           
 int getNumberOfPixelColumns()
           
 int getNumberOfPixelRows()
           
 java.lang.String getObjectUID()
           
 java.lang.String getPresentationObjectUID()
           
 java.lang.String getPresentationSeriesUID()
           
 ImageRegion getRegionOfTheImage()
           
 java.lang.String getResponseCharset()
           
 java.lang.String getResponseMimeType()
           
 java.lang.String getSeriesUID()
           
 java.lang.String getStudyUID()
           
 java.lang.String getTransferSyntaxUID()
           
 double getWindowCenterOfTheImage()
           
 double getWindowWidthOfTheImage()
           
 boolean isAnnonymizeObject()
           
 boolean isPatientAnnotation()
           
 boolean isTechniqueAnnotation()
           
 void setAnnonymizeObject(boolean annonymizeObject)
          Sets the removal of all patient identification information from within the DICOM object, if not already done, as defined in PS 3.15.
 void setFrameNumber(int frameNumber)
          Specifies that the single frame with that number within a multi-frame image object, as defined in PS 3.3 that shall be returned.
 void setImageQuality(int imageQuality)
          If the requested MIME type is for a lossy compressed image (e.g.
 void setNumberOfPixelColumns(int columns)
          Sets the image width to be returned.
 void setNumberOfPixelRows(int rows)
          Sets the image height to be returned.
 void setObjectUID(java.lang.String objectUID)
          Set the SOP Instance UID of the requested DICOM object.
 void setPatientAnnotation(boolean patient)
          Sets the requested annotation of an object retrieved and displayed as an image.
 void setPresentationObjectUID(java.lang.String presentationUID)
          Sets the SOP Instance UID of the presentation state storage object to be applied to the image.
 void setPresentationSeriesUID(java.lang.String presentationSeriesUID)
          Sets the Series Instance UID of the series containing the presentation state storage object to be applied on the image.
 void setRegionOfTheImage(ImageRegion imageRegion)
          Allows selection of a rectangular region of an image matrix to be retrieved.
 void setResponseCharset(java.lang.String charset)
          Sets the character set with which the returned object is to be encoded, as defined in the IETF RFC2616.
 void setResponseMimeType(java.lang.String contentType)
          MIME type(s) desired for the response from the Server, as defined in the IETF RFC2616.
 void setSeriesUID(java.lang.String seriesUID)
          Set the series Instance UID of the requested DICOM object.
 void setStudyUID(java.lang.String studyUID)
          Set the study Instance UID of the requested DICOM object.
 void setTechniqueAnnotation(boolean technique)
          Sets the requested annotation of an object retrieved and displayed as an image.
 void setTransferSyntaxUID(java.lang.String transferSyntax)
          Sets the Transfer Syntax to be used within the DICOM image object, as specified in PS 3.6.
 void setWindowCenterOfTheImage(double windowCenter)
          Controls the luminosity of the image as defined in PS 3.3.
 void setWindowWidthOfTheImage(double windowWidth)
          Controls the contrast of the image as defined in PS 3.3.
 java.util.List<java.lang.String> validateWADORequest()
          The method will go over the parameters in the WADORequest object and make sure that they are valid and no contradictions between them.
 

Field Detail

DICOM_MIME_TYPE

static final java.lang.String DICOM_MIME_TYPE
The MIME type for DICOM objects

See Also:
Constant Field Values

JPEG_MIME_TYPE

static final java.lang.String JPEG_MIME_TYPE
The MIME type for JPEG images

See Also:
Constant Field Values
Method Detail

setStudyUID

void setStudyUID(java.lang.String studyUID)
Set the study Instance UID of the requested DICOM object.
This parameter is required.

Parameters:
studyUID - The study Instance UID

setSeriesUID

void setSeriesUID(java.lang.String seriesUID)
Set the series Instance UID of the requested DICOM object.
This parameter is required.

Parameters:
seriesUID - The series Instance UID

setObjectUID

void setObjectUID(java.lang.String objectUID)
Set the SOP Instance UID of the requested DICOM object.
This parameter is required.

Parameters:
objectUID - The SOP Instance UID

setResponseMimeType

void setResponseMimeType(java.lang.String contentType)
MIME type(s) desired for the response from the Server, as defined in the IETF RFC2616.
This parameter is optional.

Parameters:
contentType - List of MIME types, separated by a "," character, and potentially associated with relative degree of preference, as specified in IETF RFC2616. Default is any content type.

setResponseCharset

void setResponseCharset(java.lang.String charset)
Sets the character set with which the returned object is to be encoded, as defined in the IETF RFC2616.
This parameter is optional.

Parameters:
charset - List of character sets, separated by a "," character, and potentially associated with relative degree of preference, as specified in IETF RFC2616. Default is no charset conversion.

setAnnonymizeObject

void setAnnonymizeObject(boolean annonymizeObject)
Sets the removal of all patient identification information from within the DICOM object, if not already done, as defined in PS 3.15. It shall only be present if content type is application/dicom.
This parameter is optional.

Parameters:
annonymizeObject - Whether to anonymize or not. Default is false.

setPatientAnnotation

void setPatientAnnotation(boolean patient)
Sets the requested annotation of an object retrieved and displayed as an image. It shall not be present if contentType is application/dicom, or is a non-image MIME type (e.g., text/*). When it is not present for an image object, no annotation may be burnt in.
This parameter is optional.

Parameters:
patient - For displaying patient information on the image (e.g. patient name, birth date,…)
See Also:
setTechniqueAnnotation(boolean)

setTechniqueAnnotation

void setTechniqueAnnotation(boolean technique)
Sets the requested annotation of an object retrieved and displayed as an image. It shall not be present if contentType is application/dicom, or is a non-image MIME type (e.g., text/*). When it is not present for an image object, no annotation may be burnt in.
This parameter is optional.

Parameters:
technique - For displaying technique information of the image (e.g. image number, study date, image position,…)
See Also:
setPatientAnnotation(boolean)

setNumberOfPixelRows

void setNumberOfPixelRows(int rows)
Sets the image height to be returned. It shall not be present if contentType is application/dicom.
This parameter is optional.

Parameters:
rows - The number of pixel rows

setNumberOfPixelColumns

void setNumberOfPixelColumns(int columns)
Sets the image width to be returned. It shall not be present if contentType is application/dicom.
This parameter is optional.

Parameters:
columns - The number of pixel columns

setRegionOfTheImage

void setRegionOfTheImage(ImageRegion imageRegion)
Allows selection of a rectangular region of an image matrix to be retrieved. The purpose of this parameter is to allow a user to view a selected area of the image matrix, for example at higher magnification.
The decimal parameters shall be values in a normalized coordinate system relative to the size of the original image matrix measured in rows and columns, with values ranging from 0.0 to 1.0.
This parameter is optional.

Parameters:
imageRegion - The region to be retrieved

setWindowCenterOfTheImage

void setWindowCenterOfTheImage(double windowCenter)
Controls the luminosity of the image as defined in PS 3.3.
This parameter is reuired if WindowWidthOfTheImage has been set. This parameter shall not be present if the PresentationObjectUID parameter has been set. It shall not be present if ResponseMimeType is application/dicom.

Parameters:
windowCenter - The desired luminosity of the image

setWindowWidthOfTheImage

void setWindowWidthOfTheImage(double windowWidth)
Controls the contrast of the image as defined in PS 3.3.
This parameter is reuired if WindowCenterOfTheImage has been set. This parameter shall not be present if the PresentationObjectUID parameter has been set. It shall not be present if ResponseMimeType is application/dicom.

Parameters:
windowWidth - The desired contrast of the image

setFrameNumber

void setFrameNumber(int frameNumber)
Specifies that the single frame with that number within a multi-frame image object, as defined in PS 3.3 that shall be returned.
It is optional and shall be ignored in the case of all objects other than multi-frame objects. It shall not be present if contentType is application/dicom.

Parameters:
frameNumber - The desired single frame number

setImageQuality

void setImageQuality(int imageQuality)
If the requested MIME type is for a lossy compressed image (e.g. image/jpeg), this parameter indicates the required quality of the image to be returned within the range 1 to 100, 100 being the best quality.
This parameter is optional. It shall not be present if contentType is application/dicom, except if the transferSyntax parameter is present and corresponds to a lossy compression.

Parameters:
imageQuality - The required quality of the image to be returned within the range 1 to 100, 100 being the best quality.

setPresentationObjectUID

void setPresentationObjectUID(java.lang.String presentationUID)
Sets the SOP Instance UID of the presentation state storage object to be applied to the image.
It is optional and shall not be present if contentType is application/dicom.

Parameters:
presentationUID - The SOP Instance UID of the presentation state storage object.

setPresentationSeriesUID

void setPresentationSeriesUID(java.lang.String presentationSeriesUID)
Sets the Series Instance UID of the series containing the presentation state storage object to be applied on the image.
It is optional and shall only be present if "presentationUID" is present.

Parameters:
presentationSeriesUID - The Series Instance UID of the series containing the presentation state storage object.

setTransferSyntaxUID

void setTransferSyntaxUID(java.lang.String transferSyntax)
Sets the Transfer Syntax to be used within the DICOM image object, as specified in PS 3.6. By default the DICOM object(s) returned shall be encoded in Explicit VR Little Endian. Neither Implicit VR, nor Big Endian shall be used. The response shall be the Transfer Syntax requested if possible. If it is not possible for the response to be sent using the requested transfer syntax then the Explicit VR Little Endian Uncompressed Transfer Syntax shall be used.
It is optional and shall not be present if contentType is application/dicom.

Parameters:
transferSyntax - The Transfer Syntax to be used within the DICOM image object.

generateWadoUrl

java.lang.String generateWadoUrl(java.lang.String wadoServerPath)
The method takes a WADORequest object and generates a valid WADO URL that contain all the parameters defined in the request.

Parameters:
wadoServerPath - The URL prefix for the WADO server
Returns:
The generated WADO URL

validateWADORequest

java.util.List<java.lang.String> validateWADORequest()
The method will go over the parameters in the WADORequest object and make sure that they are valid and no contradictions between them.

Parameters:
toValidate - The WADORequest object that holds the parameters to be validated
Throws:
RequestParametersValidationException - The first invalid parameter is being thrown as an exception

isAnnonymizeObject

boolean isAnnonymizeObject()
Returns:

getFrameNumber

int getFrameNumber()
Returns:

getImageQuality

int getImageQuality()
Returns:

getNumberOfPixelColumns

int getNumberOfPixelColumns()
Returns:

getNumberOfPixelRows

int getNumberOfPixelRows()
Returns:

getObjectUID

java.lang.String getObjectUID()
Returns:

isPatientAnnotation

boolean isPatientAnnotation()
Returns:

getPresentationObjectUID

java.lang.String getPresentationObjectUID()
Returns:

getPresentationSeriesUID

java.lang.String getPresentationSeriesUID()
Returns:

getRegionOfTheImage

ImageRegion getRegionOfTheImage()
Returns:

getResponseCharset

java.lang.String getResponseCharset()
Returns:

getResponseMimeType

java.lang.String getResponseMimeType()
Returns:

getSeriesUID

java.lang.String getSeriesUID()
Returns:

getStudyUID

java.lang.String getStudyUID()
Returns:

isTechniqueAnnotation

boolean isTechniqueAnnotation()
Returns:

getTransferSyntaxUID

java.lang.String getTransferSyntaxUID()
Returns:

getWindowWidthOfTheImage

double getWindowWidthOfTheImage()
Returns:

getWindowCenterOfTheImage

double getWindowCenterOfTheImage()
Returns: