Package com.pixelmed.apps

# Class DoseUtility

java.lang.Object
java.awt.Component
java.awt.Container
java.awt.Window
java.awt.Frame
javax.swing.JFrame
com.pixelmed.display.ApplicationFrame
com.pixelmed.apps.DoseUtility

All Implemented Interfaces:
  `ImageObserver`, `MenuContainer`, `Serializable`, `Accessible`, `RootPaneContainer`, `WindowConstants`

public class DoseUtility extends ApplicationFrame

This class is an application for retrieving dose information about DICOM studies of patients.

It is configured by use of a properties file that resides in the user's home directory in `.com.pixelmed.display.DoseUtility.properties`.

It supports retrieval of Dose SR objects and dose screen save images.

See Also:
  - Serialized Form

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`protected class`
`DoseUtility.ConfigureActionListener`
`protected class`
`DoseUtility.ImportActionListener`
`protected class`
`DoseUtility.ImportWorker`
`protected class`
`DoseUtility.LogActionListener`
`protected class`
`DoseUtility.MakeSRActionListener`
`protected class`
`DoseUtility.MakeSRWorker`
`protected class`
`DoseUtility.OurMediaImporter`
`protected class`
`DoseUtility.OurMultipleInstanceTransferStatusHandler`
`protected class`
`DoseUtility.OurQueryTreeBrowser`
`protected class`
`DoseUtility.OurReceivedObjectHandler`
`protected class`
`DoseUtility.OurSourceDatabaseTreeBrowser`
`protected class`
`DoseUtility.PurgeActionListener`
`protected class`
`DoseUtility.PurgeWorker`
`protected class`
`DoseUtility.QueryActionListener`
`protected class`
`DoseUtility.QueryWorker`
`protected class`
`DoseUtility.RegistryActionListener`
`protected class`
`DoseUtility.RegistryWorker`
`protected class`
`DoseUtility.ReportActionListener`
`protected class`
`DoseUtility.ReportWorker`
`protected class`
`DoseUtility.RetrieveActionListener`
`protected class`
`DoseUtility.SendActionListener`
`protected class`
`DoseUtility.SendWorker`
`protected class`
`DoseUtility.ValidateActionListener`
`protected class`
`DoseUtility.ValidateWorker`
`protected class`
`DoseUtility.ViewActionListener`
`protected class`
`DoseUtility.ViewWorker`

## Nested classes/interfaces inherited from class javax.swing.JFrame

`JFrame.AccessibleJFrame`

## Nested classes/interfaces inherited from class java.awt.Frame

`Frame.AccessibleAWTFrame`

## Nested classes/interfaces inherited from class java.awt.Window

`Window.AccessibleAWTWindow, Window.Type`

## Nested classes/interfaces inherited from class java.awt.Container

`Container.AccessibleAWTContainer`

## Nested classes/interfaces inherited from class java.awt.Component

`Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy`

## Field Summary

Fields
Modifier and Type
Field
Description
`protected JCheckBox`
`caseSensitiveCodeMeaningValidationCheckBox`
`protected static String`
`caseSensitiveCodeMeaningValidationLabelText`
`protected static String`
`configureButtonLabel`
`protected static String`
`configureButtonToolTipText`
`protected DatabaseTreeRecord[]`
`currentDatabaseTreeRecordSelections`
`protected QueryInformationModel`
`currentRemoteQueryInformationModel`
`protected QueryTreeBrowser`
`currentRemoteQueryTreeBrowser`
`protected SafeCursorChanger`
`cursorChanger`
`protected JCheckBox`
`deidentifyWhenSendingToRegistryCheckBox`
`protected static String`
`deidentifyWhenSendingToRegistryLabelText`
`protected FTPApplicationProperties`
`ftpApplicationProperties`
`protected FTPRemoteHostInformation`
`ftpRemoteHostInformation`
`protected static String`
`importButtonLabel`
`protected static String`
`importButtonToolTipText`
`protected String`
`importDirectoryPath`
`protected static String`
`localDatabaseName`
`protected static String`
`localDatabaseServerName`
`protected static String`
`logButtonLabel`
`protected static String`
`logButtonToolTipText`
`protected MessageLogger`
`logger`
`protected static int`
`loggerDialogHeightWanted`
`protected static int`
`loggertDialogWidthWanted`
`protected static String`
`loggerTitleMessage`
`protected static String`
`makeSRButtonLabel`
`protected static String`
`makeSRButtonToolTipText`
`protected NetworkApplicationInformation`
`networkApplicationInformation`
`protected NetworkApplicationProperties`
`networkApplicationProperties`
`protected String`
`ourCalledAETitle`
`protected JCheckBox`
`processOnlyDoseSeriesRecordCheckBox`
`protected static String`
`processOnlyDoseSeriesRecordLabelText`
`protected SafeProgressBarUpdaterThread`
`progressBarUpdater`
`protected static String`
`propertiesFileName`
`protected static String`
`propertyName_CurrentlySelectedDoseRegistry`
`protected static String`
`propertyName_DicomCurrentlySelectedQueryTargetAE`
`protected static String`
`propertyName_DicomCurrentlySelectedStorageTargetAE`
`protected static String`
`purgeButtonLabel`
`protected static String`
`purgeButtonToolTipText`
`protected static String`
`queryButtonLabel`
`protected static String`
`queryButtonToolTipText`
`protected JTextField`
`queryFilterPatientIDTextField`
`protected JTextField`
`queryFilterPatientNameTextField`
`protected JTextField`
`queryFilterStudyDateTextField`
`protected static String`
`queryIntroductionLabelText`
`protected static String`
`queryPatientIDLabelText`
`protected static String`
`queryPatientIDToolTipText`
`protected static String`
`queryPatientNameLabelText`
`protected static String`
`queryPatientNameToolTipText`
`protected static String`
`queryStudyDateLabelText`
`protected static String`
`queryStudyDateToolTipText`
`protected static String`
`registryButtonLabel`
`protected static String`
`registryButtonToolTipText`
`protected JPanel`
`remoteQueryRetrievePanel`
`protected static String`
`reportButtonLabel`
`protected static String`
`reportButtonToolTipText`
`protected static int`
`reportDialogHeightWanted`
`protected static int`
`reportDialogWidthWanted`
`protected JCheckBox`
`reportTabularLayoutCheckBox`
`protected static String`
`reportTabularLayoutLabelText`
`protected static String`
`reportTitleMessage`
`protected static String`
`retrieveButtonLabel`
`protected static String`
`retrieveButtonToolTipText`
`protected JCheckBox`
`retrieveOnlyDoseSeriesRecordCheckBox`
`protected static String`
`retrieveOnlyDoseSeriesRecordLabelText`
`protected File`
`savedImagesFolder`
`protected static String`
`sendButtonLabel`
`protected static String`
`sendButtonToolTipText`
`protected JCheckBox`
`showDetailedLogCheckBox`
`protected static String`
`showDetailedLogLabelText`
`protected JCheckBox`
`showOnlyDoseSummaryCheckBox`
`protected static String`
`showOnlyDoseSummaryLabelText`
`protected DatabaseInformationModel`
`srcDatabase`
`protected JPanel`
`srcDatabasePanel`
`protected StorageSOPClassSCPDispatcher`
`storageSOPClassSCPDispatcher`
`protected static int`
`textFieldLengthForQueryPatientID`
`protected static int`
`textFieldLengthForQueryPatientName`
`protected static int`
`textFieldLengthForQueryStudyDate`
`protected static String`
`validateButtonLabel`
`protected static String`
`validateButtonToolTipText`
`protected static DicomSRValidator`
`validator`
`protected static int`
`validatorFrameHeightWanted`
`protected static int`
`validatorFrameWidthWanted`
`protected static String`
`viewButtonLabel`
`protected static String`
`viewButtonToolTipText`
`protected static int`
`viewerFrameHeightWanted`
`protected static int`
`viewerFrameWidthWanted`

### Fields inherited from class com.pixelmed.display.ApplicationFrame

`resourceBundle, resourceBundleName, statusBarManager`

### Fields inherited from class javax.swing.JFrame

`accessibleContext, rootPane, rootPaneCheckingEnabled`

### Fields inherited from class java.awt.Frame

`ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, NORMAL`

### Fields inherited from class java.awt.Component

`BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT`

### Fields inherited from interface java.awt.image.ImageObserver

`ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH`

### Fields inherited from interface javax.swing.WindowConstants

`DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE`

## Constructor Summary

Constructors
Constructor
Description
`DoseUtility(String title)`

## Method Summary

Modifier and Type
Method
Description
`protected void`
`activateStorageSCP()`
Start DICOM storage listener for populating source database.
`protected void`
`activateTemporaryDatabases()`
Start local database.
`protected Vector<String>`
`deidentifyFiles(Vector<String> paths)`
`protected Vector`
`extractRadiationDoseSRFiles(Vector candidatePaths)`
`static ArrayList<QueryTreeRecord>`
`findCTSeriesAndRelatedRecordsInQueryTree(QueryTreeRecord record, ArrayList<QueryTreeRecord> records)`
`static ArrayList<QueryTreeRecord>`
`findDoseSeriesRecordsInQueryTree(QueryTreeRecord record, ArrayList<QueryTreeRecord> records)`
`protected void`
`generateDoseReportInformation(DatabaseTreeRecord[] databaseSelections, JEditorPane reportPane, StringBuffer textBuffer, boolean doHTML, MessageLogger logger, SafeProgressBarUpdaterThread progressBarUpdater, int done, int maximum)`
`protected void`
`generateDoseReportInformation(DatabaseTreeRecord databaseSelection, JEditorPane reportPane, StringBuffer textBuffer, boolean doHTML, MessageLogger logger, SafeProgressBarUpdaterThread progressBarUpdater, int done, int maximum)`
`protected void`
`generateDoseSR(DatabaseInformationModel srcDatabase, DatabaseTreeRecord[] databaseSelections, MessageLogger logger, SafeProgressBarUpdaterThread progressBarUpdater, int done, int maximum)`
`protected void`
`generateDoseSR(DatabaseInformationModel srcDatabase, DatabaseTreeRecord databaseSelection, MessageLogger logger, SafeProgressBarUpdaterThread progressBarUpdater, int done, int maximum)`
`protected Vector`
`getCurrentSourceFilePathSelections()`
`protected static String`
`getOriginDescriptionForLog(CTDose ctDose, DatabaseInformationModel srcDatabase)`
`static String`
`getQueryRetrieveAEFromIdentifier(AttributeList identifier, QueryInformationModel queryInformationModel)`
`static String`
`getQueryRetrieveLevel(AttributeList identifier, Attribute uniqueKey)`
`protected static String`
`getSRDescriptionForLog(AttributeList list)`
`protected static void`
`importFileIntoDatabase(DatabaseInformationModel database, String dicomFileName, String fileRefererenceType)`
`static void`
`main(String[] arg)`
The method to invoke the application.
`protected void`
`performRetrieve(AttributeList uniqueKeys, String selectionLevel, String retrieveAE)`
`protected void`
`purgeFilesAndDatabaseInformation(DatabaseTreeRecord[] databaseSelections, MessageLogger logger, SafeProgressBarUpdaterThread progressBarUpdater, int done, int maximum)`
`protected void`
`purgeFilesAndDatabaseInformation(DatabaseTreeRecord databaseSelection, MessageLogger logger, SafeProgressBarUpdaterThread progressBarUpdater, int done, int maximum)`
`static void`
`recurseThroughChildrenGatheringFileNamesOfDoseFiles(DatabaseTreeRecord r, Vector names, boolean onlyDoseFiles, String manufacturer)`
Recursively process the specified DatabaseTreeRecord and all its children finding file paths of possible dose-related files (not the reconstructed image files) at the instance level.
`static void`
`recurseThroughChildrenGatheringFileNamesOfSRFiles(DatabaseTreeRecord r, Vector names)`
Recursively process the specified DatabaseTreeRecord and all its children finding file paths of SR files at the instance level.
`protected void`
`setCurrentRemoteQueryInformationModel(String remoteAEForQuery)`

### Methods inherited from class com.pixelmed.display.ApplicationFrame

`createGUI, getApplicationPropertyFileName, getBooleanPropertyOrDefaultAndAddIt, getBooleanPropertyOrDefaultAndAddIt, getBuildDate, getIntegerPropertyOrDefaultAndAddIt, getIntegerPropertyOrDefaultAndAddIt, getProperties, getPropertyInsistently, getPropertyInsistently, getPropertyOrDefaultAndAddIt, getPropertyOrDefaultAndAddIt, getReleaseString, getStatusBar, loadProperties, localizeJOptionPane, makePathToFileInUsersHomeDirectory, setApplicationPropertyFileName, setBackgroundForGUI, setInternationalizedFontsForGUI, setPreferredLookAndFeelForPlatform, storeProperties, takeSnapShot`

### Methods inherited from class javax.swing.JFrame

`addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update`

### Methods inherited from class java.awt.Frame

`addNotify, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setBackground, setExtendedState, setMaximizedBounds, setMenuBar, setOpacity, setResizable, setShape, setState, setTitle, setUndecorated`

### Methods inherited from class java.awt.Window

`addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, createBufferStrategy, createBufferStrategy, dispose, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, setVisible, toBack, toFront`

### Methods inherited from class java.awt.Container

`add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, list, list, paintComponents, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusDownCycle, validate, validateTree`

### Methods inherited from class java.awt.Component

`add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, hasFocus, imageUpdate, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isValid, isVisible, list, list, list, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, requestFocusInWindow, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setMixingCutoutShape, setName, setPreferredSize, toString, transferFocus, transferFocusBackward, transferFocusUpCycle`

### Methods inherited from class java.lang.Object

`clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface java.awt.MenuContainer

`getFont`

## Field Details

### propertiesFileName

protected static String propertiesFileName

### propertyName_DicomCurrentlySelectedStorageTargetAE

protected static String propertyName_DicomCurrentlySelectedStorageTargetAE

### propertyName_DicomCurrentlySelectedQueryTargetAE

protected static String propertyName_DicomCurrentlySelectedQueryTargetAE

### propertyName_CurrentlySelectedDoseRegistry

protected static String propertyName_CurrentlySelectedDoseRegistry

### localDatabaseName

protected static String localDatabaseName

### localDatabaseServerName

protected static String localDatabaseServerName

### textFieldLengthForQueryPatientName

protected static int textFieldLengthForQueryPatientName

### textFieldLengthForQueryPatientID

protected static int textFieldLengthForQueryPatientID

### textFieldLengthForQueryStudyDate

protected static int textFieldLengthForQueryStudyDate

### queryIntroductionLabelText

protected static String queryIntroductionLabelText

### queryPatientNameLabelText

protected static String queryPatientNameLabelText

### queryPatientIDLabelText

protected static String queryPatientIDLabelText

### queryStudyDateLabelText

protected static String queryStudyDateLabelText

### configureButtonLabel

protected static String configureButtonLabel

### logButtonLabel

protected static String logButtonLabel

### queryButtonLabel

protected static String queryButtonLabel

### retrieveButtonLabel

protected static String retrieveButtonLabel

### importButtonLabel

protected static String importButtonLabel

### viewButtonLabel

protected static String viewButtonLabel

### validateButtonLabel

protected static String validateButtonLabel

### reportButtonLabel

protected static String reportButtonLabel

### makeSRButtonLabel

protected static String makeSRButtonLabel

### sendButtonLabel

protected static String sendButtonLabel

### registryButtonLabel

protected static String registryButtonLabel

### purgeButtonLabel

protected static String purgeButtonLabel

### configureButtonToolTipText

protected static String configureButtonToolTipText

### logButtonToolTipText

protected static String logButtonToolTipText

### queryButtonToolTipText

protected static String queryButtonToolTipText

### retrieveButtonToolTipText

protected static String retrieveButtonToolTipText

### importButtonToolTipText

protected static String importButtonToolTipText

### viewButtonToolTipText

protected static String viewButtonToolTipText

### validateButtonToolTipText

protected static String validateButtonToolTipText

### reportButtonToolTipText

protected static String reportButtonToolTipText

### makeSRButtonToolTipText

protected static String makeSRButtonToolTipText

### sendButtonToolTipText

protected static String sendButtonToolTipText

### registryButtonToolTipText

protected static String registryButtonToolTipText

### purgeButtonToolTipText

protected static String purgeButtonToolTipText

### queryPatientNameToolTipText

protected static String queryPatientNameToolTipText

### queryPatientIDToolTipText

protected static String queryPatientIDToolTipText

### queryStudyDateToolTipText

protected static String queryStudyDateToolTipText

### retrieveOnlyDoseSeriesRecordLabelText

protected static String retrieveOnlyDoseSeriesRecordLabelText

### processOnlyDoseSeriesRecordLabelText

protected static String processOnlyDoseSeriesRecordLabelText

### showOnlyDoseSummaryLabelText

protected static String showOnlyDoseSummaryLabelText

### showDetailedLogLabelText

protected static String showDetailedLogLabelText

### reportTabularLayoutLabelText

protected static String reportTabularLayoutLabelText

### caseSensitiveCodeMeaningValidationLabelText

protected static String caseSensitiveCodeMeaningValidationLabelText

### deidentifyWhenSendingToRegistryLabelText

protected static String deidentifyWhenSendingToRegistryLabelText

### reportTitleMessage

protected static String reportTitleMessage

### loggerTitleMessage

protected static String loggerTitleMessage

### viewerFrameWidthWanted

protected static int viewerFrameWidthWanted

### viewerFrameHeightWanted

protected static int viewerFrameHeightWanted

### validatorFrameWidthWanted

protected static int validatorFrameWidthWanted

### validatorFrameHeightWanted

protected static int validatorFrameHeightWanted

### reportDialogWidthWanted

protected static int reportDialogWidthWanted

### reportDialogHeightWanted

protected static int reportDialogHeightWanted

### loggertDialogWidthWanted

protected static int loggertDialogWidthWanted

### loggerDialogHeightWanted

protected static int loggerDialogHeightWanted

### srcDatabase

protected DatabaseInformationModel srcDatabase

### srcDatabasePanel

protected JPanel srcDatabasePanel

### remoteQueryRetrievePanel

protected JPanel remoteQueryRetrievePanel

### retrieveOnlyDoseSeriesRecordCheckBox

protected JCheckBox retrieveOnlyDoseSeriesRecordCheckBox

### processOnlyDoseSeriesRecordCheckBox

protected JCheckBox processOnlyDoseSeriesRecordCheckBox

### showOnlyDoseSummaryCheckBox

protected JCheckBox showOnlyDoseSummaryCheckBox

### showDetailedLogCheckBox

protected JCheckBox showDetailedLogCheckBox

### reportTabularLayoutCheckBox

protected JCheckBox reportTabularLayoutCheckBox

### caseSensitiveCodeMeaningValidationCheckBox

protected JCheckBox caseSensitiveCodeMeaningValidationCheckBox

### deidentifyWhenSendingToRegistryCheckBox

protected JCheckBox deidentifyWhenSendingToRegistryCheckBox

### queryFilterPatientNameTextField

protected JTextField queryFilterPatientNameTextField

### queryFilterPatientIDTextField

protected JTextField queryFilterPatientIDTextField

### queryFilterStudyDateTextField

protected JTextField queryFilterStudyDateTextField

### progressBarUpdater

protected SafeProgressBarUpdaterThread progressBarUpdater

### cursorChanger

protected SafeCursorChanger cursorChanger

### logger

protected MessageLogger logger

### networkApplicationProperties

protected NetworkApplicationProperties networkApplicationProperties

### networkApplicationInformation

protected NetworkApplicationInformation networkApplicationInformation

### ftpApplicationProperties

protected FTPApplicationProperties ftpApplicationProperties

### ftpRemoteHostInformation

protected FTPRemoteHostInformation ftpRemoteHostInformation

### currentRemoteQueryInformationModel

protected QueryInformationModel currentRemoteQueryInformationModel

### currentRemoteQueryTreeBrowser

protected QueryTreeBrowser currentRemoteQueryTreeBrowser

### ourCalledAETitle

protected String ourCalledAETitle

### validator

protected static DicomSRValidator validator

### savedImagesFolder

protected File savedImagesFolder

### storageSOPClassSCPDispatcher

protected StorageSOPClassSCPDispatcher storageSOPClassSCPDispatcher

### currentDatabaseTreeRecordSelections

protected DatabaseTreeRecord[] currentDatabaseTreeRecordSelections

### importDirectoryPath

protected String importDirectoryPath

## Constructor Details

### DoseUtility

public DoseUtility(String title) throws DicomException, IOException

Throws:
  `DicomException`
  `IOException`

## Method Details

### setCurrentRemoteQueryInformationModel

protected void setCurrentRemoteQueryInformationModel(String remoteAEForQuery)

### importFileIntoDatabase

protected static void importFileIntoDatabase(DatabaseInformationModel database, String dicomFileName, String fileRefererenceType) throws FileNotFoundException, IOException, DicomException

Throws:
  `FileNotFoundException`
  `IOException`
  `DicomException`

### activateStorageSCP

protected void activateStorageSCP() throws DicomException, IOException

Start DICOM storage listener for populating source database.

Throws:
  `DicomException`
  `IOException`

### activateTemporaryDatabases

protected void activateTemporaryDatabases() throws DicomException

Start local database.

Will not persist when the application is closed, so in memory database is used and instances live in the temporary filesystem.

Throws:
  `DicomException`

### getCurrentSourceFilePathSelections

protected Vector getCurrentSourceFilePathSelections()

### recurseThroughChildrenGatheringFileNamesOfDoseFiles

public static void recurseThroughChildrenGatheringFileNamesOfDoseFiles(DatabaseTreeRecord r, Vector names, boolean onlyDoseFiles, String manufacturer)

Recursively process the specified DatabaseTreeRecord and all its children finding file paths of possible dose-related files (not the reconstructed image files) at the instance level.

Based on the method in DatabaseTreeBrowser, modified to filter by database record type.

Parameters:
  `r` - the current DatabaseTreeRecord to process
  `names` - the file names (paths) to add to
  `onlyDoseFiles` - if true, only process dose-related files (not the reconstructed image files)
  `manufacturer` - passed from series level down to instance

### recurseThroughChildrenGatheringFileNamesOfSRFiles

public static void recurseThroughChildrenGatheringFileNamesOfSRFiles(DatabaseTreeRecord r, Vector names)

Recursively process the specified DatabaseTreeRecord and all its children finding file paths of SR files at the instance level.

Based on the method in DatabaseTreeBrowser, modified to filter by database record type.

Parameters:
  `r` - the current DatabaseTreeRecord to process
  `names` - the file names (paths) to add to

### extractRadiationDoseSRFiles

protected Vector extractRadiationDoseSRFiles(Vector candidatePaths)

### generateDoseReportInformation

protected void generateDoseReportInformation(DatabaseTreeRecord[] databaseSelections, JEditorPane reportPane, StringBuffer textBuffer, boolean doHTML, MessageLogger logger, SafeProgressBarUpdaterThread progressBarUpdater, int done, int maximum) throws DicomException, IOException

Throws:
  `DicomException`
  `IOException`

### generateDoseReportInformation

protected void generateDoseReportInformation(DatabaseTreeRecord databaseSelection, JEditorPane reportPane, StringBuffer textBuffer, boolean doHTML, MessageLogger logger, SafeProgressBarUpdaterThread progressBarUpdater, int done, int maximum) throws DicomException, IOException

Throws:
  `DicomException`
  `IOException`

### purgeFilesAndDatabaseInformation

protected void purgeFilesAndDatabaseInformation(DatabaseTreeRecord[] databaseSelections, MessageLogger logger, SafeProgressBarUpdaterThread progressBarUpdater, int done, int maximum) throws DicomException, IOException

Throws:
  `DicomException`
  `IOException`

### purgeFilesAndDatabaseInformation

protected void purgeFilesAndDatabaseInformation(DatabaseTreeRecord databaseSelection, MessageLogger logger, SafeProgressBarUpdaterThread progressBarUpdater, int done, int maximum) throws DicomException, IOException

Throws:
  `DicomException`
  `IOException`

### getSRDescriptionForLog

protected static String getSRDescriptionForLog(AttributeList list)

### getOriginDescriptionForLog

protected static String getOriginDescriptionForLog(CTDose ctDose, DatabaseInformationModel srcDatabase) throws DicomException

Throws:
  `DicomException`

### generateDoseSR

protected void generateDoseSR(DatabaseInformationModel srcDatabase, DatabaseTreeRecord[] databaseSelections, MessageLogger logger, SafeProgressBarUpdaterThread progressBarUpdater, int done, int maximum) throws DicomException, IOException

Throws:
  `DicomException`
  `IOException`

### generateDoseSR

protected void generateDoseSR(DatabaseInformationModel srcDatabase, DatabaseTreeRecord databaseSelection, MessageLogger logger, SafeProgressBarUpdaterThread progressBarUpdater, int done, int maximum) throws DicomException, IOException

Throws:
  `DicomException`
  `IOException`

### deidentifyFiles

protected Vector<String> deidentifyFiles(Vector<String> paths) throws DicomException, IOException

Throws:
  `DicomException`
  `IOException`

### getQueryRetrieveAEFromIdentifier

public static String getQueryRetrieveAEFromIdentifier(AttributeList identifier, QueryInformationModel queryInformationModel)

### getQueryRetrieveLevel

public static String getQueryRetrieveLevel(AttributeList identifier, Attribute uniqueKey)

### performRetrieve

protected void performRetrieve(AttributeList uniqueKeys, String selectionLevel, String retrieveAE)

### findDoseSeriesRecordsInQueryTree

public static ArrayList<QueryTreeRecord> findDoseSeriesRecordsInQueryTree(QueryTreeRecord record, ArrayList<QueryTreeRecord> records)

### findCTSeriesAndRelatedRecordsInQueryTree

public static ArrayList<QueryTreeRecord> findCTSeriesAndRelatedRecordsInQueryTree(QueryTreeRecord record, ArrayList<QueryTreeRecord> records)

### main

public static void main(String[] arg)

The method to invoke the application.

Parameters:
  `arg` - none