CTN Utility Programs

dcm_dump_file Display contents of DICOM image header
dcm_dump_element Display a DICOM image header element
dcm_x_disp/dcm_w_disp Quick display of DICOM image
dcm_move Rename and move DICOM image files
dcm_count Count number of images in DICOM directory by series
dcm_combine Combine multi NEX series into single series
dcm_study Show study number of DICOM image
send_image Send an image to a DICOM server
simple_storage DICOM server daemon
runDicom Daemon to keep simple_storage running
Full Downloads All programs in gzipped tar file or zip file

dcm_dump_file - Display contents of DICOM image header

This program is part of the RSNA/Mallinckrodt Institute Central Test Node Software package.

Usage: dcm_dump_file [-b] [-g] [-l] [-t] [-v] [-z] file [file ...]

-b Input files are stored in big-endian byte order
-e Exit on file open error.  Do not process other files
-g Remove group length elements
-l  Use (retired) length-to-end attribute for object length
-t  Part 10 file
-v Place DCM facility in verbose mode
-z Perform format conversion (verification) on data in files

file

One or more information objects to be dumped

dcm_dump_element - Display a DICOM image header element

This program is part of the RSNA/Mallinckrodt Institute Central Test Node Software package.

Usage: dcm_dump_element [-b] [-t] [-v] group element filein fileout

 
-b Read file assuming big endian transfer syntax
-t Read file assuming DICOM Part 10 format
-v Place DCM facility in verbose mode

group element

The tag of the element to be dumped
filein fileout Input and output files

dcm_x_disp / dcm_w_disp - Quick display of DICOM image

This program is part of the RSNA/Mallinckrodt Institute Central Test Node Software package.

Usage: dcm_x_disp [-b] [-t] [-w display_width -h display_height] [-W width] [-C center] <dicom image file>

-b Read file assuming big endian transfer syntax
-t Read file assuming DICOM Part 10 format

simple_storage - DICOM server daemon

This program is part of the RSNA/Mallinckrodt Institute Central Test Node Software package. It has been modified locally to have several additional features. It is no longer used on godzilla for image transfers from the scanners.

Usage: simple_storage [-a] [-c title]  [-d FAC] [-i] [-j] [-k] [-l log-file][-m maxPDU] [-n naming] [-p] [-s] [-t trips] [-u uid] [-v] [-w] [-x dir] [-z sec] port

-a Abort Association after receiving one image (debugging tool)
-c Set the AE title of this server
-d Place one facility (DCM, DUL, SRV) in verbose mode
-f Fork a new process for each connection
-i Ignore some incorrect parameters in Association request
-j Use thread model.  Spawn a new thread for each connection
-k Kill (delete) files immediately after they are received
-l Log stdout and stderr to named log file (JHU addition)
-m Set the maximum received PDU in the Association RP to maxPDU
-n <naming> contains naming convention for files stored
-p Dump the Association RQ parameters
-s Silent mode.  Don't dump attributes of received images
-t Execute the main loop trips times (debugging tool)
-u Run as this alternate uid when not running as root (JHU addition)
-v Place DUL and SRV facilities in verbose mode
-w Wait flag.  Wait for 1 second in callback routines (debugging)
-x Set base directory for image creation.  Default is current directory
-z Wait for sec seconds before releasing association
port The TCP/IP port number to use

Image Storage Redirection (JHU addition)

All images are stored in the directory named on the command line using the -x option or in the current working directory where simple_storage is started, if -x is not given. You can redirect images from this default directory using information given in certain DICOM header fields. Binaries: JHU Solaris2    unmodified Solaris2  NT

runDicom - Daemon to keep simple_storage running

Usage: runDicom [-help|-kill|-restart] [any simple_storage switches...]

This program runs in the background. It starts a simple_storage daemon and waits for it to exit (or crash). It then starts another one, so simple_storage is always kept running.

If command line switches are provided, they are used when starting simple_storage, unless the first switch is one of the following:

-help  prints this message
-kill kills runDicom and simple_storage
-restart kills runDicom and simple_storage, then restarts both

The kill and restart switches will work for any user if runDicom is owned by root and set uid user bit is set. Otherwise the currently running runDicom process must be owned by the user performing the kill or restart.

If no command line switches for simple_storage are given on the command line, runDicom looks for the file /usr/local/sbin/runDicom.<hostname>, where <hostname> is the name returned by the gethostname system call.  That file must contain valid switches and switch parameters for simple_storage, one switch or parameter to a line. For example:

-l
/tmp/simple_storage.log
-s
-c
DICOM_STORAGE
-u
600
-f
-x
/g1/dicom
3010
If that file does not exist, the following switches are used for starting simple_storage:
-l /tmp/simple_storage.log -s -f -c DICOM_STORAGE -u 0 3010
runDicom logs starts and shutdowns of simple_storage in the file /tmp/simple_storage.log. This same file can be used for simple_storage
log info using the switch "-l /tmp/simple_storage.log".

Source & Binary: Solaris2


Full Downloads

All files described above for each platform in a single compressed file

Solaris 2.x binaries and shell scripts in a gzipped tar file

Windows NT binaries in a zip file

libctn.so CTN dynamic library