SYNOPSIS
dgate -wDIR -^LOGFILE
Starts dgate with dicom.ini located at DIR and logging to LOGFILE
dgate
-pPORT -qIP --COMMAND:ARGS
Sends COMMAND with ARGS directly to dgate instance at IP:PORT
DESCRIPTION
ConQuest is a full featured and Lua-scriptable DICOM server.
To check DICOM conformance, please check /usr/share/doc/conquest-dicom-server/DicomConformance_FilesLST_Changes.pdf.gz
DGATE: UCDMC/NKI DICOM server thread and PACS utility application 1.4.17d
OPTIONS
There are three common patterns to use dgate. And those patterns have different ways to interpret options, as follows. Other options are described below.Usage: (1) DGATE <-!#|-v|-u#|-^#> Report as in dicom.ini|stdout|UDP|File(#=port)
- [-p#|-qIP|-b]
- Set port|Set target IP|run debug 1-thread mode
- [-wDIR]
- Set the working directory for dgate(ini,dic,...)
- [-i|-r|-arDEVICE]
- Init|Init/regenerate DB|Regen single device
- [-d|-m|-k]
- List (-d) devices (-m) AE map (-k) DICOM.SQL
- [-t|-o]
- Test console|Test database
- [-sOpt|-esap d u p]
- Create ODBC source (WIN32), database with SApw
- [-nd|-nc#|-jd|-jc#]
- NKI de-/compress#|JPEG de-/compress# FILE
- [-j*##|-j-##FILE]
- Recompress FILE to ##
- [-as#,N|-amFROM,TO]
- Select#KB to archive of MAGN|move device data
- [-au|-aeFROM,TO]
- Undo select for archiving|rename device
- [-av|-atDEVICE]
- Verify mirror disk|Test read files for DEVICE
- [-abJUKEBOX1.2,N]
- Make cacheset to burn JUKEBOX1,CD2 from MAGN
- [-acJUKEBOX1.2]
- Verify JUKEBOX1,CD2 against cacheset
- [-adJUKEBOX1.2]
- Verify and delete cacheset for JUKEBOX1, CD2
- [-f<p|t|s|i>ID]
- Delete DB for Patient, sTudy, Series, Image
- [-f<e|d|z>file]
- Enter/Delete DB of file, Zap server file
- [-faFILE<,ID>]
- Add file to server<optionally change PATID>
- [-zID]
- Delete (zap) patient
- [-frDEVICE,DIR]
- Regen single directory DIR on DEVICE
- [-f<c|k>PATID,file]
- Change/Kopy PATID of file (irreversible/once)
- [-f?file|-fu|-c#]
- get UID of file|Make new UID|UID helper(0..99)
- [-ff#]
- Delete old patients until #MB free
- [-gSERVER,DATE]
- grab images from SERVER of date not on here Otherwise: run as threaded server, port=1111
(2) DGATE FileMapping Run server child; shared memory has socket#
(3) DGATE <-pPORT> <-qIP> --command:arguments
- Send command to (this or other) running server
- (works directly - use with care)
OTHER OPTIONS
Delete options:
- --deleteimagefile:file
- Delete given image file from server
- --deletepatient:patid
- Delete given patient from server
- --deletestudy:patid:studyuid
- Delete given study from server
- --deletestudies:date(range)
- Delete studies from server on date
- --deleteseries:patid:seriesuid
- Delete given series from server
- --deleteimagefromdb:file
- Delete given file from db only
- --deletesopfromdb:pat,study,series,sop
- Delete specified image from db only
DICOM move options:
- --movepatient:source,dest,patid
- Move patient, source e.g. (local)
- --movestudy:source,dest,patid:studyuid
- Move study, patid: optional
- --moveaccession:source,dest,patid:acc
- Move by Accession#, patid: optional
- --movestudies:source,dest,date(range)
- Move studies on date
- --moveseries:src,dst,patid:seruid,stuid
- Move series patid: optional
Modification of dicom objects:
- --modifypatid:patid,file
- Change patid of given file
- --anonymize:patid,file
- Anonymize given file
- --modifystudy:p,s,script
- Change items in patient or study
- --modifyseries:p,s,script
- Change items in series
- --modifyimage:file,script
- Change items in file
- --mergestudy:uid,uid,..
- Start merging studies with given studyuids
- --mergestudyfile:file
- Use to process all files to merge
- --mergeseries:uid,uid,..
- Start merging series with given seriesuids
- --mergeseriesfile:file
- Use to process all files to merge
- --attachanytopatient:any,sample
- Modify uids to attach any object to
- --attachanytostudy:any,sample
- patient|study|series in sample file
- --attachanytoseries:any,sample
- Do not attach same at different levels
- --attachrtplantortstruct:plan,struc
- Attach rtplan to rtstruct
Maintenance options:
- --initializetables:
- Clear and create database
- --initializetables:1
- Clear and create database without indices
- --initializetables:2
- Clear and create worklist database
- --regen:
- Re-generate entire database
- --regendevice:device
- Re-generate database for single device
- --regendir:device,dir
- Re-generate database for single directory
- --regenfile:file
- Re-enter given file in database
- --makespace:#
- Delete old patients to make #MB space
- --quit:
- Stop the server
- --safequit:
- Stop the server when not active
Logging options:
- --debuglog_on:file/port
- Start debug logging
- --log_on:file/port/pipe
- Start normal logging
- --debuglevel:#
- Set debug logging level
- --display_status:file
- Display server status
- --status_string:file
- Display status string of submit operation
- --checklargestmalloc:
- Estimates DICOM object size limit
- --get_freestore:dev,fmt
- Report free #Mb on device
- --testmode:#
- Append # to dicom filenames
- --echo:AE,file
- Echo server; show response
Configuration options:
- --get_param:name,fmt
- Read any parameter from DICOM.INI
- --get_ini_param:name,fmt
- Read any parameter from DICOM.INI
- --get_ini_num:index,fmt
- List any entry from DICOM.INI
- --get_ini:fmt
- List all entries from DICOM.INI
- --put_param:name,value
- Write any parameter to DICOM.INI
- --delete_param:name
- Delete any parameter from DICOM.INI
- --read_ini:
- Re-read all parameters from DICOM.INI
- --get_amap:index,fmt
- List any entry from ACRNEMA.MAP
- --get_amaps:fmt
- List all entries from ACRNEMA.MAP
- --put_amap:i,AE,ip,p#,cmp
- Write entry in memory for ACRNEMA.MAP
- --delete_amap:index
- Delete entry in memory for ACRNEMA.MAP
- --write_amap:
- Write ACRNEMA.MAP from memory to disk
- --read_amap:
- Re-read ACRNEMA.MAP from disk to memory
- --get_sop:index,fmt
- List any accepted service class UID
- --put_sop:index,UID,name
- Write/add accepted service class UID
- --delete_sop:index
- Delete accepted service class UID
- --get_transfer:index,fmt
- List any accepted transfer syntax
- --put_transfer:in,UID,nam
- Write/add accepted transfer syntax
- --delete_transfer:index
- Delete accepted transfer syntax
- --get_application:idx,fmt
- List any accepted application UID
- --put_application:i,U,n
- Write/add accepted application UID
- --delete_application:inde
- Delete accepted application UID
- --get_localae:index,fmt
- List any accepted local AE title
- --put_localae:in,AE,name
- Write/add accepted local AE title
- --delete_localae:index
- Delete accepted local AE title
- --get_remoteae:index,fmt
- List any accepted remote AE title
- --put_remoteae:in,AE,name
- Write/add accepted remote AE title
- --delete_remoteae:index
- Delete accepted remote AE title
- --get_dic:index,fmt
- List any dicom dictionary item
- --get_sqldef:level,in,fmt
- List any database field definition
Communication options:
- --addimagefile:file,patid
- Copy file into server, optionally new patid
- --addlocalfile:file,patid
- Copy local file into server, opt. new patid
- --loadanddeletedir:dir,patid
- Load folder and delete its contents
- --loadhl7:file
- Load HL7 data into worklist
- --dump_header:filein,fileout
- Create header dump of file
- --forward:file,mode,server
- Send file with compr. mode to server
- --grabimagesfromserver:AE,date
- Update this server from other
- --prefetch:patientid
- Prefetch all images for improved speed
- --browsepatient:searchstring
- Select patient in windows GUI
- --submit:p,s,s,s,target,pw,scr
- Immediate sftp submit of data
- --submit2:p,s,s,s,target,c,scr
- Immediate submit with command line c
- --export:p,st,ser,sop,file,scr
- Immediate process and zip/7z data
- --scheduletransfer:options
- Background sftp transfer as above
Test options:
- --genuid:
- Generate an UID
- --changeuid:UID
- Give new UID as generated now or before
- --changeuidback:UID
- Give old UID from one generated above
- --checksum:string
- Give checksum of string
- --testcompress:file
- Enter file in server with many compressions
- --clonedb:AE
- Clone db from server for testing
Conversion options:
- --convert_to_gif:file,size,out,l/w/f
- Downsize and convert to mono GIF
- --convert_to_bmp:file,size,out,l/w/f
- Downsize and convert to color BMP
- --convert_to_jpg:file,size,out,l/w/f
- Downsize and convert to color JPG
- --convert_to_dicom:file,size,comp,f
- Downsize/compress/frame DICOM
- --extract_frames:file,out,first,last
- Select frames of DICOM file
- --count_frames:file
- report # frames in DICOM file
- --uncompress:file,out
- Uncompress DICOM
- --compress:file,mode,out
- Compress DICOM to mode e.g. J2
- --wadorequest:parameters
- Internal WADO server
Database options:
- --query:table|fields|where|fmt|file
- Arbitrary query output to file
- --query2:tab|fld|whe|fmt|max|file
- Same but limit output rows to max
- --patientfinder:srv|str|fmt|file
- List patients on server
- --studyfinder:srv|str|fmt|file
- List studies on server
- --seriesfinder:srv|str|fmt|file
- List series on server
- --imagefinder:srv|str|fmt|file
- List images on server
- --serieslister:srv|pat|stu|fmt|file
- List series in a study
- --imagelister:srv|pat|ser|fmt|file
- List (local) files in a series
- --extract:PatientID = 'id'
- Extract all dbase tables to X..
- --extract:
- Extract patient dbase table to XA..
- --addrecord:table|flds|values
- Append record, values must be in ''
- --deleterecord:table,where
- Delete record from table
For DbaseIII without ODBC:
- --packdbf:
- Pack database, recreate memory index
- --indexdbf:
- Re-create memory index
Archival options:
- --renamedevice:from,to
- Rename device in database
- --verifymirrordisk:device
- Verify mirror disk for selected device
- --testimages:device
- Test read all images on device
- --movedatatodevice:to,from
- Move patients from one device to another
- --moveseriestodevice:to,from
- Move series from one device to another
- --selectlruforarchival:kb,device
- Step 1 for archival: to device.Archival
- --selectseriestomove:device,age,kb
- Step 1 for archival: to device.Archival
- --preparebunchforburning:to,from
- Step 2 for archival: moves to cache
- --deletebunchafterburning:deviceto
- Step 3 for archival: deletes from cache
-
--comparebunchafterburning:deviceto Part step 3 - compare jukebox to cache
- --restoremagflags:
-
- Undo archival sofar
Scripting options:
- --lua:chunk
- Run lua chunk in server, wait to finish
- --luastart:chunk
- Run lua chunk in server, retn immediate
- --dolua:chunk
- Run lua chunk in this dgate instance
- --dolua:filename
- Run lua file in this dgate instance
COMPRESSION
ConQuest supports a lot of compression and downsizing methods. These can be declared in the acrnema.map file, using directives DroppedFileCompression, IncomingCompression and ArchiveCompression in dicom.ini file and/or by using modifiers to AE Title (check AE TITLE section below).The following information was extracted from section 7.7 of the manual (file /user/share/doc/conquest-dicom-server/windowsmanual.pdf.gz in this package):
Files dropped into the server will optionally be compressed, decompressed and/or recompressed. Supported values are (expected compression ratio stated between brackets):
- as
- store images as is, e.g. without changing the compression.
- is
- store images as is, e.g. without changing the compression.
- un
- uncompress NKI and/or JPEG compressed images
- n1
- fast NKI private loss-less compression mode 1 (50%)
- n2
- as n1 but with CRC check for errors (50%)
- n3
- fast NKI private loss-less compression mode 3 (40%)
- n4
- as n3 but with CRC check for errors (40%)
- j1
- JPEGLossless (retired, use J2 instead) (33%)
- j2
- JPEGLosslessNH14 (33%)
- j3
- JPEG baseline 1 (8 bit) lossy (8%)
- j4
- JPEGExtended2and4 lossy (15%)
- j5
- JPEGSpectralNH6and8 lossy (15%)
- j6
- JPEGFulllNH10and12 lossy (14%)
- j3NN
- JPEG baseline 1 (8 bit) quality as defined (60..95 suggested)
- j4NN
- JPEGExtended2and4 quality as defined (60..95 suggested)
- j5NN
- JPEGSpectralNH6and8 quality as defined (60..95 suggested)
- j6NN
- JPEGFulllNH10and12 quality as defined (60..95 suggested)
- jk
- Lossless JPEG2000 (30%)
- jl
- Lossy JPEG2000 (20%)
- jlNN
- Lossy JPEG2000 bitrate as defined (1..20 suggested)
- nj
- Highest NKI mode; but leaves JPEG as is (variable)
- uj
- Uncompressed; but leaves JPEG as is (variable)
- k1
- Downsize image>1024 pixels wide/high to 1024 (variable)
- k2
- Downsize image>512 pixels wide/high to 512 (variable)
- k4
- Downsize image>256 pixels wide/high to 256 (variable)
- k8
- Downsize image>128 pixels wide/high to 128 (variable)
- ka
- Downsize image>64 pixels wide/high to 64 (variable)
AE TITLE
The default AE Title for ConQuest DICOM server in this package is CONQUESTSRV1 and this is the AE Title you should use in DICOM viewers pointing to it. As a "bonus" feature, you can use AE Title to declare the type of compression you'll be using between the viewer and the server. just add ~XX to ConQuest AE Title, where XX is the compression algo/level you wish to use. For instance, to use uncompressed images, the AE Title CONQUESTSRV1~un can be declared in your DICOM node configuration in the viewer.FILES
All of the locations below can be configured in dicom.ini file. In this package ConQuest expects dicom.ini to be present in the /etc/conquest-dicom-server directory. This can be changed using -w option (see OPTIONS above).- /etc/conquest-dicom-server/dicom.ini
- Several self-explanatory configuration parameters for the server.
- /etc/conquest-dicom-server/acrnema.map
- Map of the DICOM nodes allowed to retrieve studies from ConQuest and their compression methods
- /etc/conquest-dicom-server/dicom.sql
- Database schema for the server
- /etc/conquest-dicom-server/dgate.dic
- DICOM dictionary
- /etc/conquest-dicom-server/dgatesop.lst
- DICOM SOP Class List
- /var/log/conquest-dicom-server/dgate.log
- Log from the running server (equivalent to stderr)
- /var/log/conquest-dicom-server/trouble.log
- Errors from the running server
- /var/log/conquest-dicom-server/user.log
- Application user log
- /var/lib/conquest-dicom-server/dbase/conquest.sqlite
- Database of DICOM information on Patients, Studies, Series, etc
- /var/lib/conquest-dicom-server/MAG0/*
- Where images are placed
AUTHOR
ConQuest DICOM Server was written by Marcel van Herk and Lambert Zijp at Netherlands Cancer Institute based on University of California at Davis Medical Center DICOM code, originally developed by Mark Oskin.This manpage was written by help2man with parts supplied by Pablo Lorenzzoni <[email protected]> for the Debian package.
REPORTING BUGS
For ConQuest specific bugs, please first check their forum at http://forum.image-systems.biz/viewforum.php?f=33 and, if needed, send email to Lambert Zijp <[email protected]>.For bugs in the Debian package, please use Debian's BTS at http://bugs.debian.org or the tool provided in reportbug package.