getscu: SCU de récupération DICOM (C-GET)
SYNOPSIS
getscu [options] peer port [dcmfile-in...]
DESCRIPTION
L'application getscu met en œuvre un SCU pour la Query/Retrieve Service Class. getscu prend en charge la fonction de récupération au moyen du message C-GET. Elle envoie des clés d'interrogation à un SCP et attend les réponses contenant des images ou d'autres objets DICOM envoyés via C-STORE. Comme l'exige le service DICOM, le C-GET et les messages C-STORE qui l'accompagnent sont traités sur la même association. Par conséquent, les objets ne peuvent être reçus que par getscu elle-même et ne peuvent pas être envoyés à un tiers (movescu serait l'outil approprié pour cette tâche).
PARAMÈTRES
peer hostname of DICOM peer
port tcp/ip port number of peer
dcmfile-in DICOM query file(s)
OPTIONS
options générales
-h --help- affiche cette aide et quitte
--version- affiche les informations de version et quitte
--arguments- affiche les arguments de ligne de commande développés
-q --quiet- mode silencieux, n'affiche ni avertissements ni erreurs
-v --verbose- mode détaillé, affiche les détails du traitement
-d --debug- mode débogage, affiche les informations de débogage
-ll --log-level [l]evel: string constant- (fatal, error, warn, info, debug, trace) utilise le niveau l pour la journalisation
-lc --log-config [f]ilename: string- utilise le fichier de configuration f pour la journalisation
+v --verbose-pc- affiche les contextes de présentation en mode détaillé
options réseau
-k --key [k]ey: gggg,eeee="str", path or dictionary name="str"- remplace la clé de correspondance k. modèle d'information de la requête :
-P --patient- utilise le modèle d'information patient root (par défaut)
-S --study- utilise le modèle d'information study root
-O --psonly- utilise le modèle d'information patient/study only. version du protocole IP :
-i4 --ipv4- utilise uniquement IPv4 (par défaut)
-i6 --ipv6- utilise uniquement IPv6
-i0 --ip-auto- utilise une résolution DNS pour déterminer le protocole IP. titres d'entité applicative :
-aet --aetitle [a]etitle: string- définit mon AE Title appelant (par défaut : GETSCU)
-aec --call [a]etitle: string- définit l'AE Title appelé du pair (par défaut : ANY-SCP). syntaxes de transfert de stockage privilégiées (associations entrantes) :
+x= --prefer-uncompr- préfère l'ordre d'octets local VR explicite (par défaut)
+xe --prefer-little- préfère la TS explicit VR little endian
+xb --prefer-big- préfère la TS explicit VR big endian
+xs --prefer-lossless- préfère la TS JPEG lossless par défaut
+xy --prefer-jpeg8- préfère la TS JPEG lossy par défaut pour les données 8 bits
+xx --prefer-jpeg12- préfère la TS JPEG lossy par défaut pour les données 12 bits
+xv --prefer-j2k-lossless- préfère la TS JPEG 2000 lossless
+xw --prefer-j2k-lossy- préfère la TS JPEG 2000 lossy
+xt --prefer-jls-lossless- préfère la TS JPEG-LS lossless
+xu --prefer-jls-lossy- préfère la TS JPEG-LS lossy
+xm --prefer-mpeg2- préfère la TS MPEG2 Main Profile @ Main Level
+xh --prefer-mpeg2-high- préfère la TS MPEG2 Main Profile @ High Level
+xn --prefer-mpeg4- préfère la TS MPEG4 AVC/H.264 HP / Level 4.1
+xl --prefer-mpeg4-bd- préfère la TS MPEG4 AVC/H.264 BD-compatible HP / Level 4.1
+x2 --prefer-mpeg4-2-2d- préfère la TS MPEG4 AVC/H.264 HP / Level 4.2 pour les vidéos 2D
+x3 --prefer-mpeg4-2-3d- préfère la TS MPEG4 AVC/H.264 HP / Level 4.2 pour les vidéos 3D
+xo --prefer-mpeg4-2-st- préfère la TS MPEG4 AVC/H.264 Stereo HP / Level 4.2
+x4 --prefer-hevc- préfère la TS HEVC/H.265 Main Profile / Level 5.1
+x5 --prefer-hevc10- préfère la TS HEVC/H.265 Main 10 Profile / Level 5.1
+xr --prefer-rle- préfère la TS RLE lossless
+xd --prefer-deflated- préfère la TS deflated explicit VR little endian
+xi --implicit- accepte uniquement la TS implicit VR little endian. syntaxes de transfert de récupération proposées (associations sortantes) :
-x= --propose-uncompr- propose toutes les TS non compressées, VR explicite à ordre d'octets local en premier (par défaut)
-xe --propose-little- propose toutes les TS non compressées, VR explicite little endian en premier
-xb --propose-big- propose toutes les TS non compressées, VR explicite big endian en premier
-xd --propose-deflated- propose la TS deflated explicit VR little endian ainsi que toutes les syntaxes de transfert non compressées
-xi --propose-implicit- propose uniquement la TS implicit VR little endian. autres options réseau :
-to --timeout [s]econds: integer (default: unlimited)- délai d'attente pour les requêtes de connexion
-ta --acse-timeout [s]econds: integer (default: 30)- délai d'attente pour les messages ACSE
-td --dimse-timeout [s]econds: integer (default: unlimited)- délai d'attente pour les messages DIMSE
-pdu --max-pdu [n]umber of bytes: integer (4096..131072)- définit la PDU de réception maximale à n octets (par défaut : 16384)
--repeat [n]umber: integer- répète n fois
--abort- interrompt (abort) l'association au lieu de la libérer
options de sécurité de la couche transport (TLS)
-tls --disable-tls- utilise une connexion TCP/IP normale (par défaut)
+tls --enable-tls [p]rivate key file, [c]ertificate file: string- utilise une connexion TLS sécurisée authentifiée
+tla --anonymous-tls- utilise une connexion TLS sécurisée sans certificat. mot de passe de la clé privée (uniquement avec --enable-tls) :
+ps --std-passwd- invite l'utilisateur à saisir le mot de passe sur stdin (par défaut)
+pw --use-passwd [p]assword: string- utilise le mot de passe indiqué
-pw --null-passwd- utilise une chaîne vide comme mot de passe. format de fichier de la clé et du certificat :
-pem --pem-keys- lit les clés et certificats au format de fichier PEM (par défaut)
-der --der-keys- lit les clés et certificats au format de fichier DER. autorité de certification :
+cf --add-cert-file [f]ilename: string- ajoute un fichier de certificat à la liste des certificats
+cd --add-cert-dir [d]irectory: string- ajoute les certificats de d à la liste des certificats
+crl --add-crl-file [f]ilename: string- ajoute un fichier de liste de révocation de certificats (implique --enable-crl-vfy)
+crv --enable-crl-vfy- active la vérification CRL du certificat feuille
+cra --enable-crl-all- active la vérification CRL de la chaîne complète. profil de sécurité :
+ph --list-profiles- liste les profils TLS pris en charge et quitte
+pg --profile-8996- profil TLS BCP 195 RFC 8996 (par défaut)
+pm --profile-8996-mod- profil TLS BCP 195 RFC 8996 modifié # disponible uniquement si la bibliothèque TLS sous-jacente prend en charge # toutes les fonctionnalités TLS requises pour ce profil
+py --profile-bcp195-nd- profil TLS BCP 195 sans rétrogradation (obsolète)
+px --profile-bcp195- profil TLS BCP 195 (obsolète)
+pz --profile-bcp195-ex- profil TLS BCP 195 étendu (obsolète)
+pb --profile-basic- profil de connexion de transport sécurisé TLS de base (obsolète) # disponible uniquement si la bibliothèque TLS sous-jacente prend en charge 3DES
+pa --profile-aes- profil de connexion de transport sécurisé TLS AES (obsolète)
+pn --profile-null- communication non chiffrée authentifiée (obsolète, utilisée auparavant dans IHE ATNA). suite de chiffrement :
+cc --list-ciphers- liste les suites de chiffrement TLS prises en charge et quitte
+cs --cipher [c]iphersuite name: string- ajoute une suite de chiffrement à la liste des suites négociées. Server Name Indication :
--no-sni- n'utilise pas SNI (par défaut)
--request-sni [s]erver name: string- demande le nom de serveur s. générateur pseudo-aléatoire :
+rs --seed [f]ilename: string- initialise le générateur aléatoire avec le contenu de f
+ws --write-seed- réécrit la graine modifiée (uniquement avec --seed)
+wf --write-seed-file [f]ilename: string (only with --seed)- écrit la graine modifiée dans le fichier f. authentification du pair :
-rc --require-peer-cert- vérifie le certificat du pair, échoue en son absence (par défaut)
-ic --ignore-peer-cert- ne vérifie pas le certificat du pair
options de sortie
-od --output-directory [d]irectory: string (default: ".")- écrit les objets reçus dans le répertoire existant d. mode de stockage :
-B --normal- reçoit en mémoire, puis écrit sur le disque (par défaut)
+B --bit-preserving- reçoit directement sur le disque
--ignore- ignore les données de stockage, les reçoit mais ne les enregistre pas
NOTES
Chaque fichier indiqué sur la ligne de commande est envoyé au SCP dans le cadre d'une requête C-GET. Le fichier d'interrogation doit être un jeu de données DICOM valide contenant la partie jeu de données d'un message C-GET-RQ. Il peut par exemple être créé avec l'utilitaire dump2dcm à partir d'un script comme dans l'exemple suivant :
# request all images for the patient with ID=PAT001
(0008,0052) CS [PATIENT] # QueryRetrieveLevel
(0010,0020) LO [PAT001] # PatientID
Une autre possibilité consiste à utiliser l'outil dcmodify pour créer un fichier de toutes pièces, à l'aide de l'option –create-file suivie d'appels successifs à l'option –insert. Les attributs individuels peuvent être modifiés ou complétés à l'aide de l'option -k (ou –key). Par exemple, la commande :
getscu -k "0010,0020=PAT002" caesar 5678 patqry.dcm
envoyée au SCP caesar sur le port TCP/IP 5678, donne la valeur 'PAT002' à tout attribut PatientID présent dans patqry.dcm. Si cet attribut est présent, il est remplacé ; s'il est absent, il est inséré. L'option -k peut être indiquée plusieurs fois. La partie valeur (après le '=') peut être omise, auquel cas l'attribut est envoyé avec une longueur nulle. Il est également possible de préciser des séquences, des items et des attributs imbriqués au moyen de l'option -k. Dans ce cas, une notation spéciale "chemin" doit être utilisée. Les détails figurent dans la documentation de dcmodify.
Si aucun fichier n'est indiqué sur la ligne de commande, l'interrogation doit être entièrement spécifiée au moyen d'une ou plusieurs options -k. Si plusieurs fichiers d'interrogation sont fournis, getscu envoie plusieurs requêtes C-GET au SCP.
Problèmes connus
getscu est destiné à être utilisé comme outil de test par les développeurs de logiciels DICOM. Le fichier de clés d'interrogation doit être créé à la main en fonction du contenu du SCP.
Le C-GET n'est pas pris en charge par tous les SCP Query/Retrieve. Le protocole C-MOVE, mis en œuvre par l'outil movescu, est plus couramment rencontré en pratique.
L'application getscu ne cherche en aucune façon à empêcher les interrogations incorrectes. En particulier, les clés d'interrogation d'une requête C-MOVE ne devraient contenir que l'attribut QueryRetrieveLevel et un ou plusieurs des attributs dits "uniques" (PatientID, StudyInstanceUID, SeriesInstanceUID et SOPInstanceUID).
Conformité DICOM
Conformité SCU
L'application getscu prend en charge les classes SOP suivantes en tant que SCU :
GETPatientRootQueryRetrieveInformationModel 1.2.840.10008.5.1.4.1.2.1.3
GETStudyRootQueryRetrieveInformationModel 1.2.840.10008.5.1.4.1.2.2.3
GETPatientStudyOnlyQueryRetrieveInformationModel 1.2.840.10008.5.1.4.1.2.3.3
L'application getscu propose des contextes de présentation pour l'une des classes SOP prises en charge mentionnées ci-dessus, selon les options de ligne de commande (-P, -S ou -O). Pour les associations sortantes, les syntaxes de transfert suivantes sont prises en charge :
LittleEndianImplicitTransferSyntax 1.2.840.10008.1.2
LittleEndianExplicitTransferSyntax 1.2.840.10008.1.2.1
DeflatedExplicitVRLittleEndianTransferSyntax 1.2.840.10008.1.2.1.99 (*)
BigEndianExplicitTransferSyntax 1.2.840.10008.1.2.2
(*) si compilé avec la prise en charge de zlib activée (voir la sortie de –version)
Les syntaxes de transfert réellement proposées, ainsi que leur ordre, peuvent être définies au moyen des options –propose.
Conformité de stockage
L'application getscu prend en charge les classes SOP suivantes en tant que SCP :
VerificationSOPClass 1.2.840.10008.1.1
RETIRED_StoredPrintStorage 1.2.840.10008.5.1.1.27
RETIRED_HardcopyGrayscaleImageStorage 1.2.840.10008.5.1.1.29
RETIRED_HardcopyColorImageStorage 1.2.840.10008.5.1.1.30
ComputedRadiographyImageStorage 1.2.840.10008.5.1.4.1.1.1
DigitalXRayImageStorageForPresentation 1.2.840.10008.5.1.4.1.1.1.1
DigitalXRayImageStorageForProcessing 1.2.840.10008.5.1.4.1.1.1.1.1
DigitalMammographyXRayImageStorageForPresentation 1.2.840.10008.5.1.4.1.1.1.2
DigitalMammographyXRayImageStorageForProcessing 1.2.840.10008.5.1.4.1.1.1.2.1
DigitalIntraOralXRayImageStorageForPresentation 1.2.840.10008.5.1.4.1.1.1.3
DigitalIntraOralXRayImageStorageForProcessing 1.2.840.10008.5.1.4.1.1.1.3.1
CTImageStorage 1.2.840.10008.5.1.4.1.1.2
EnhancedCTImageStorage 1.2.840.10008.5.1.4.1.1.2.1
LegacyConvertedEnhancedCTImageStorage 1.2.840.10008.5.1.4.1.1.2.2
RETIRED_UltrasoundMultiframeImageStorage 1.2.840.10008.5.1.4.1.1.3
UltrasoundMultiframeImageStorage 1.2.840.10008.5.1.4.1.1.3.1
MRImageStorage 1.2.840.10008.5.1.4.1.1.4
EnhancedMRImageStorage 1.2.840.10008.5.1.4.1.1.4.1
MRSpectroscopyStorage 1.2.840.10008.5.1.4.1.1.4.2
EnhancedMRColorImageStorage 1.2.840.10008.5.1.4.1.1.4.3
LegacyConvertedEnhancedMRImageStorage 1.2.840.10008.5.1.4.1.1.4.4
RETIRED_NuclearMedicineImageStorage 1.2.840.10008.5.1.4.1.1.5
RETIRED_UltrasoundImageStorage 1.2.840.10008.5.1.4.1.1.6
UltrasoundImageStorage 1.2.840.10008.5.1.4.1.1.6.1
EnhancedUSVolumeStorage 1.2.840.10008.5.1.4.1.1.6.2
SecondaryCaptureImageStorage 1.2.840.10008.5.1.4.1.1.7
MultiframeSingleBitSecondaryCaptureImageStorage 1.2.840.10008.5.1.4.1.1.7.1
MultiframeGrayscaleByteSecondaryCaptureImageStorage 1.2.840.10008.5.1.4.1.1.7.2
MultiframeGrayscaleWordSecondaryCaptureImageStorage 1.2.840.10008.5.1.4.1.1.7.3
MultiframeTrueColorSecondaryCaptureImageStorage 1.2.840.10008.5.1.4.1.1.7.4
RETIRED_StandaloneOverlayStorage 1.2.840.10008.5.1.4.1.1.8
RETIRED_StandaloneCurveStorage 1.2.840.10008.5.1.4.1.1.9
TwelveLeadECGWaveformStorage 1.2.840.10008.5.1.4.1.1.9.1.1
GeneralECGWaveformStorage 1.2.840.10008.5.1.4.1.1.9.1.2
AmbulatoryECGWaveformStorage 1.2.840.10008.5.1.4.1.1.9.1.3
HemodynamicWaveformStorage 1.2.840.10008.5.1.4.1.1.9.2.1
CardiacElectrophysiologyWaveformStorage 1.2.840.10008.5.1.4.1.1.9.3.1
BasicVoiceAudioWaveformStorage 1.2.840.10008.5.1.4.1.1.9.4.1
GeneralAudioWaveformStorage 1.2.840.10008.5.1.4.1.1.9.4.2
ArterialPulseWaveformStorage 1.2.840.10008.5.1.4.1.1.9.5.1
RespiratoryWaveformStorage 1.2.840.10008.5.1.4.1.1.9.6.1
WaveformPresentationStateStorage 1.2.840.10008.5.1.4.1.1.9.100.1
WaveformAcquisitionPresentationStateStorage 1.2.840.10008.5.1.4.1.1.9.100.2
RETIRED_StandaloneModalityLUTStorage 1.2.840.10008.5.1.4.1.1.10
RETIRED_StandaloneVOILUTStorage 1.2.840.10008.5.1.4.1.1.11
GrayscaleSoftcopyPresentationStateStorage 1.2.840.10008.5.1.4.1.1.11.1
ColorSoftcopyPresentationStateStorage 1.2.840.10008.5.1.4.1.1.11.2
PseudoColorSoftcopyPresentationStateStorage 1.2.840.10008.5.1.4.1.1.11.3
BlendingSoftcopyPresentationStateStorage 1.2.840.10008.5.1.4.1.1.11.4
XAXRFGrayscaleSoftcopyPresentationStateStorage 1.2.840.10008.5.1.4.1.1.11.5
XRayAngiographicImageStorage 1.2.840.10008.5.1.4.1.1.12.1
EnhancedXAImageStorage 1.2.840.10008.5.1.4.1.1.12.1.1
XRayRadiofluoroscopicImageStorage 1.2.840.10008.5.1.4.1.1.12.2
EnhancedXRFImageStorage 1.2.840.10008.5.1.4.1.1.12.2.1
RETIRED_XRayAngiographicBiPlaneImageStorage 1.2.840.10008.5.1.4.1.1.12.3
XRay3DAngiographicImageStorage 1.2.840.10008.5.1.4.1.1.13.1.1
XRay3DCraniofacialImageStorage 1.2.840.10008.5.1.4.1.1.13.1.2
BreastTomosynthesisImageStorage 1.2.840.10008.5.1.4.1.1.13.1.3
IntravascularOpt.Coh.Tom.ImageStorageForPresentation 1.2.840.10008.5.1.4.1.1.14.1
IntravascularOpt.Coh.Tom.ImageStorageForProcessing 1.2.840.10008.5.1.4.1.1.14.2
NuclearMedicineImageStorage 1.2.840.10008.5.1.4.1.1.20
RawDataStorage 1.2.840.10008.5.1.4.1.1.66
SpatialRegistrationStorage 1.2.840.10008.5.1.4.1.1.66.1
SpatialFiducialsStorage 1.2.840.10008.5.1.4.1.1.66.2
DeformableSpatialRegistrationStorage 1.2.840.10008.5.1.4.1.1.66.3
SegmentationStorage 1.2.840.10008.5.1.4.1.1.66.4
SurfaceSegmentationStorage 1.2.840.10008.5.1.4.1.1.66.5
RealWorldValueMappingStorage 1.2.840.10008.5.1.4.1.1.67
SurfaceScanMeshStorage 1.2.840.10008.5.1.4.1.1.68.1
SurfaceScanPointCloudStorage 1.2.840.10008.5.1.4.1.1.68.2
RETIRED_VLImageStorage 1.2.840.10008.5.1.4.1.1.77.1
VLEndoscopicImageStorage 1.2.840.10008.5.1.4.1.1.77.1.1
VideoEndoscopicImageStorage 1.2.840.10008.5.1.4.1.1.77.1.1.1
VLMicroscopicImageStorage 1.2.840.10008.5.1.4.1.1.77.1.2
VideoMicroscopicImageStorage 1.2.840.10008.5.1.4.1.1.77.1.2.1
VLSlideCoordinatesMicroscopicImageStorage 1.2.840.10008.5.1.4.1.1.77.1.3
VLPhotographicImageStorage 1.2.840.10008.5.1.4.1.1.77.1.4
VideoPhotographicImageStorage 1.2.840.10008.5.1.4.1.1.77.1.4.1
OphthalmicPhotography8BitImageStorage 1.2.840.10008.5.1.4.1.1.77.1.5.1
OphthalmicPhotography16BitImageStorage 1.2.840.10008.5.1.4.1.1.77.1.5.2
StereometricRelationshipStorage 1.2.840.10008.5.1.4.1.1.77.1.5.3
OphthalmicTomographyImageStorage 1.2.840.10008.5.1.4.1.1.77.1.5.4
VLWholeSlideMicroscopyImageStorage 1.2.840.10008.5.1.4.1.1.77.1.6
RETIRED_VLMultiframeImageStorage 1.2.840.10008.5.1.4.1.1.77.2
LensometryMeasurementsStorage 1.2.840.10008.5.1.4.1.1.78.1
AutorefractionMeasurementsStorage 1.2.840.10008.5.1.4.1.1.78.2
KeratometryMeasurementsStorage 1.2.840.10008.5.1.4.1.1.78.3
SubjectiveRefractionMeasurementsStorage 1.2.840.10008.5.1.4.1.1.78.4
VisualAcuityMeasurementsStorage 1.2.840.10008.5.1.4.1.1.78.5
SpectaclePrescriptionReportStorage 1.2.840.10008.5.1.4.1.1.78.6
OphthalmicAxialMeasurementsStorage 1.2.840.10008.5.1.4.1.1.78.7
IntraocularLensCalculationsStorage 1.2.840.10008.5.1.4.1.1.78.8
MacularGridThicknessAndVolumeReportStorage 1.2.840.10008.5.1.4.1.1.79.1
OphthalmicVisualFieldStaticPerimetryMeasurementsSt. 1.2.840.10008.5.1.4.1.1.80.1
OphthalmicThicknessMapStorage 1.2.840.10008.5.1.4.1.1.81.1
BasicTextSRStorage 1.2.840.10008.5.1.4.1.1.88.11
EnhancedSRStorage 1.2.840.10008.5.1.4.1.1.88.22
ComprehensiveSRStorage 1.2.840.10008.5.1.4.1.1.88.33
Comprehensive3DSRStorage 1.2.840.10008.5.1.4.1.1.88.34
ProcedureLogStorage 1.2.840.10008.5.1.4.1.1.88.40
MammographyCADSRStorage 1.2.840.10008.5.1.4.1.1.88.50
KeyObjectSelectionDocumentStorage 1.2.840.10008.5.1.4.1.1.88.59
ChestCADSRStorage 1.2.840.10008.5.1.4.1.1.88.65
XRayRadiationDoseSRStorage 1.2.840.10008.5.1.4.1.1.88.67
ColonCADSRStorage 1.2.840.10008.5.1.4.1.1.88.69
ImplantationPlanSRStorage 1.2.840.10008.5.1.4.1.1.88.70
EncapsulatedPDFStorage 1.2.840.10008.5.1.4.1.1.104.1
EncapsulatedCDAStorage 1.2.840.10008.5.1.4.1.1.104.2
PositronEmissionTomographyImageStorage 1.2.840.10008.5.1.4.1.1.128
LegacyConvertedEnhancedPETImageStorage 1.2.840.10008.5.1.4.1.1.128.1
RETIRED_StandalonePETCurveStorage 1.2.840.10008.5.1.4.1.1.129
EnhancedPETImageStorage 1.2.840.10008.5.1.4.1.1.130
BasicStructuredDisplayStorage 1.2.840.10008.5.1.4.1.1.131
RTImageStorage 1.2.840.10008.5.1.4.1.1.481.1
RTDoseStorage 1.2.840.10008.5.1.4.1.1.481.2
RTStructureSetStorage 1.2.840.10008.5.1.4.1.1.481.3
RTBeamsTreatmentRecordStorage 1.2.840.10008.5.1.4.1.1.481.4
RTPlanStorage 1.2.840.10008.5.1.4.1.1.481.5
RTBrachyTreatmentRecordStorage 1.2.840.10008.5.1.4.1.1.481.6
RTTreatmentSummaryRecordStorage 1.2.840.10008.5.1.4.1.1.481.7
RTIonPlanStorage 1.2.840.10008.5.1.4.1.1.481.8
RTIonBeamsTreatmentRecordStorage 1.2.840.10008.5.1.4.1.1.481.9
RTBeamsDeliveryInstructionStorage 1.2.840.10008.5.1.4.34.7
L'application getscu accepte généralement les contextes de présentation pour l'ensemble des classes SOP prises en charge mentionnées ci-dessus, avec l'une quelconque des syntaxes de transfert suivantes :
LittleEndianImplicitTransferSyntax 1.2.840.10008.1.2
LittleEndianExplicitTransferSyntax 1.2.840.10008.1.2.1
BigEndianExplicitTransferSyntax 1.2.840.10008.1.2.2
Lorsqu'elle agit en tant que SCP de stockage, l'application getscu privilégie les syntaxes de transfert à codage explicite par rapport à la syntaxe de transfert implicite par défaut. Si getscu s'exécute sur du matériel big-endian, elle privilégie la syntaxe de transfert BigEndianExplicit par rapport à LittleEndianExplicit (et inversement). Ce comportement peut être modifié au moyen des options –prefer (voir ci-dessus). Selon l'option –prefer effectivement utilisée, une combinaison des syntaxes de transfert suivantes est prise en charge :
LittleEndianImplicitTransferSyntax 1.2.840.10008.1.2
LittleEndianExplicitTransferSyntax 1.2.840.10008.1.2.1
DeflatedExplicitVRLittleEndianTransferSyntax 1.2.840.10008.1.2.1.99 (*)
BigEndianExplicitTransferSyntax 1.2.840.10008.1.2.2
JPEGProcess1TransferSyntax 1.2.840.10008.1.2.4.50
JPEGProcess2_4TransferSyntax 1.2.840.10008.1.2.4.51
JPEGProcess14SV1TransferSyntax 1.2.840.10008.1.2.4.70
JPEGLSLosslessTransferSyntax 1.2.840.10008.1.2.4.80
JPEGLSLossyTransferSyntax 1.2.840.10008.1.2.4.81
JPEG2000LosslessOnlyTransferSyntax 1.2.840.10008.1.2.4.90
JPEG2000TransferSyntax 1.2.840.10008.1.2.4.91
MPEG2MainProfileAtMainLevelTransferSyntax 1.2.840.10008.1.2.4.100
MPEG2MainProfileAtHighLevelTransferSyntax 1.2.840.10008.1.2.4.101
MPEG4HighProfileLevel4_1TransferSyntax 1.2.840.10008.1.2.4.102
MPEG4BDcompatibleHighProfileLevel4_1TransferSyntax 1.2.840.10008.1.2.4.103
MPEG4HighProfileLevel4_2_For2DVideoTransferSyntax 1.2.840.10008.1.2.4.104
MPEG4HighProfileLevel4_2_For3DVideoTransferSyntax 1.2.840.10008.1.2.4.105
MPEG4StereoHighProfileLevel4_2TransferSyntax 1.2.840.10008.1.2.4.106
HEVCMainProfileLevel5_1TransferSyntax 1.2.840.10008.1.2.4.107
HEVCMain10ProfileLevel5_1TransferSyntax 1.2.840.10008.1.2.4.108
RLELosslessTransferSyntax 1.2.840.10008.1.2.5
(*) si compilé avec la prise en charge de zlib activée (voir la sortie de –version)
L'application getscu ne prend pas en charge la négociation étendue.
EXEMPLES
getscu --patient --call ARCHIVE caesar 104 q.dcm
envoie les attributs contenus dans le fichier DICOM "q.dcm" dans le cadre d'une requête C-GET à l'entité applicative ARCHIVE sur l'hôte caesar au port 104, en utilisant le modèle d'interrogation Patient Root. getscu utilise elle-même l'AE Title par défaut GETSCU.
Contrairement aux classes SOP Query/Retrieve fondées sur le C-MOVE, les classes SOP fondées sur le C-GET utilisées par getscu ne permettent de récupérer les objets souhaités que sur la même connexion, c'est-à-dire que getscu reçoit elle-même les objets. Il n'est donc pas possible de demander au SCP de transmettre les objets à un tiers. Il s'agit d'une limitation du protocole DICOM, et non de l'outil getscu.
JOURNALISATION
Le niveau de détail de la journalisation des différents outils en ligne de commande et des bibliothèques sous-jacentes peut être spécifié par l'utilisateur. Par défaut, seules les erreurs et les avertissements sont écrits dans le flux d'erreur standard. L'option –verbose permet également de signaler des messages d'information tels que les détails du traitement. L'option –debug permet d'obtenir plus de détails sur l'activité interne, par exemple à des fins de débogage. L'option –log-level permet de sélectionner d'autres niveaux de journalisation. En mode –quiet, seules les erreurs fatales sont signalées. Dans de tels cas d'erreur très graves, l'application se termine généralement. Pour plus de détails sur les différents niveaux de journalisation, consultez la documentation du module "oflog".
Si la sortie de la journalisation doit être écrite dans un fichier (éventuellement avec rotation des fichiers journaux), vers syslog (Unix) ou le journal des événements (Windows), l'option –log-config peut être utilisée. Ce fichier de configuration permet également de diriger uniquement certains messages vers un flux de sortie particulier et de filtrer certains messages en fonction du module ou de l'application qui les génère. Un exemple de fichier de configuration est fourni dans < etcdir>/logger.cfg.
LIGNE DE COMMANDE
Tous les outils en ligne de commande utilisent la notation suivante pour les paramètres : les crochets entourent les valeurs facultatives (0-1), trois points de suspension à la fin indiquent que plusieurs valeurs sont autorisées (1-n), et la combinaison des deux signifie de 0 à n valeurs.
Les options de la ligne de commande se distinguent des paramètres par un signe '+' ou '-' en tête. En général, l'ordre et la position des options de la ligne de commande sont arbitraires (c'est-à-dire qu'elles peuvent apparaître n'importe où). Toutefois, si des options s'excluent mutuellement, c'est la dernière occurrence, la plus à droite, qui est utilisée. Ce comportement est conforme aux règles d'évaluation standard des shells Unix courants.
De plus, un ou plusieurs fichiers de commandes peuvent être spécifiés en utilisant un signe '@' comme préfixe du nom de fichier (par exemple @command.txt). Un tel argument de commande est remplacé par le contenu du fichier texte correspondant (les espaces multiples sont traités comme un séparateur unique, sauf s'ils apparaissent entre deux guillemets) avant toute évaluation ultérieure. Notez qu'un fichier de commandes ne peut pas contenir un autre fichier de commandes. Cette approche simple mais efficace permet de regrouper des combinaisons courantes d'options/paramètres et évite des lignes de commande longues et peu lisibles (un exemple est fourni dans le fichier < datadir>/dumppat.txt).
ENVIRONNEMENT
L'utilitaire getscu tente de charger les dictionnaires de données DICOM spécifiés dans la variable d'environnement DCMDICTPATH. Par défaut, c'est-à-dire si la variable d'environnement DCMDICTPATH n'est pas définie, le fichier < datadir>/dicom.dic est chargé, sauf si le dictionnaire est intégré à l'application (par défaut sous Windows).
Il est préférable de conserver le comportement par défaut et de n'utiliser la variable d'environnement DCMDICTPATH que lorsque des dictionnaires de données alternatifs sont nécessaires. La variable d'environnement DCMDICTPATH a le même format que la variable PATH des shells Unix, en ce sens que les deux-points (":") séparent les entrées. Sur les systèmes Windows, le point-virgule (";") est utilisé comme séparateur. Le code du dictionnaire de données tente de charger chaque fichier spécifié dans la variable d'environnement DCMDICTPATH. C'est une erreur si aucun dictionnaire de données ne peut être chargé.
VOIR AUSSI
findscu(1), movescu(1), dump2dcm(1), dcmodify(1)
COPYRIGHT
Copyright (C) 2011-2025 by OFFIS e.V., Escherweg 2, 26121 Oldenburg, Germany.