how can mpps SCU provide MPPS SOP Instance UID to JDICOM SCP

Questions regarding other OFFIS DICOM tools

Moderator: Moderator Team

Post Reply
Message
Author
deepujames
Posts: 19
Joined: Wed, 2005-02-09, 08:44

how can mpps SCU provide MPPS SOP Instance UID to JDICOM SCP

#1 Post by deepujames »

Hi
I am implementing a MPPS SCU N_Create. I use JDICOM RIS server as SCP. I am using dcmtk libraries for implementation of SCU. SOP Instance UID of the object created by JDICOM SCP is not matching with what I am providing from SCU side in the dataset. In short JDICOM RIS Server SCP is creating its own MPPS SOP Instance UID's and files with same name irrespective of whatever SOP Instance UID I am giving from the MPPS SCU side. Can anybody help me in resolving this problem.

I tried sending it in dataset in following tags:
(0008,1111) SQ -- PPS Seq
(0000,0002) 1.2.840.10008.3.1.2.3.3 ReferencedSOPClassUID
(0000,1000)1.2.40.0.13.0.3.235.116.24.32519825.1134026010000.40003

and also tried as given in JDICOM Modality SCU -mpps

(0002,0002) MediaStorageSOPClassUID UI 1.2.840.10008.3.1.2.3.3
(0002,0003) MediaStorageSOPInstanceUID UI 1.2.40.0.13.0.3.235.116.24.368691285.1136182952701.32779

In all these cases result is success for N_Create, but JDICOM SCP is not accepting UID given from SCU throgh DATASET and it creates its own Mpps UID(also file name same as uid in JDICOM) and return the created UID back to SCU.

Marco Eichelberg
OFFIS DICOM Team
OFFIS DICOM Team
Posts: 1444
Joined: Tue, 2004-11-02, 17:22
Location: Oldenburg, Germany
Contact:

#2 Post by Marco Eichelberg »

Attributes of group (0000,xxxx) never belong in the dataset. These are only ever sent as part of the command set. Since you already successful assemble a command struct using the functions from dcmtk/dcmnet/dimse.h, it should be fairly easy to update your code to also set the SOP instance UID there. There is also a binary flag reflecting the fact that the optional SOP instance UID should be included in the command set.

deepujames
Posts: 19
Joined: Wed, 2005-02-09, 08:44

how can we add elements to commandset

#3 Post by deepujames »

Hi
As DCMTK doesn't have funtion for N_Create, I have used the function from /dcmtk/dcmnet/include/dimse.h
DIMSE_sendMessageUsingMemoryData(T_ASC_Association *association,
T_ASC_PresentationContextID presID,
T_DIMSE_Message *msg, DcmDataset *statusDetail,
DcmDataset *dataObject,
DIMSE_ProgressCallback callback,
void *callbackContext,
DcmDataset **commandSet=NULL);
How can i send a command set using this function? Is there any other function for sending Command set using DCMTK?

Also please note that i am getting tags from a DICOM Part5 file into the Dataset (Similer to findscu from a query file) before seding N_Create req structure variable in the above function to JDICOM SCP.
Also I have put values to elements of structure variable
in my code for the following case.
struct T_DIMSE_N_CreateRQ {
DIC_US MessageID; /* M */
DIC_UI AffectedSOPClassUID; /* M */
DIC_UI AffectedSOPInstanceUID; /* U */
T_DIMSE_DataSetType DataSetType; /* M */
/* AttributeList provided as argument to DIMSE functions *//* M */
unsigned int opts; /* which optional items are set */
#define O_NCREATE_AFFECTEDSOPINSTANCEUID 0x0002
} ;
But the value set to AffectedSOPInstanceUID is not used by JDICOM SCP for creating SOP Instance. SCP is creating it own UID for this.

With this context could you please explain how can I create a command set with tags (0000,0002) and (0000,1000) and send it to SCP along with thedataset.
Is it possible to set the binary flag (you told in the reply) for SOPInstanceUID from SCU side using DCMTK?

Marco Eichelberg
OFFIS DICOM Team
OFFIS DICOM Team
Posts: 1444
Joined: Tue, 2004-11-02, 17:22
Location: Oldenburg, Germany
Contact:

#4 Post by Marco Eichelberg »

DIMSE_sendMessageUsingMemoryData() is the right approach, and the SOP instance UID should be specified in the AffectedSOPInstanceUID field of struct T_DIMSE_N_CreateRQ. Flag O_NCREATE_AFFECTEDSOPINSTANCEUID should be set in opts. This should cause the correct command set to be generated. If JDICOM still ignores the SOP instance UID, this might as well be a bug in JDICOM.

deepujames
Posts: 19
Joined: Wed, 2005-02-09, 08:44

thanks for your help

#5 Post by deepujames »

Hi
I got it all right. I have given value >10 to opts. Its working fine. But if you give value 1 or 0 to it, it wont accept it. Sorry I was confused with the term command set in the previous question. nice to know that we have to assaign O_NCREATE_AFFECTEDSOPINSTANCEUID to opts.

analih
Posts: 1
Joined: Fri, 2007-11-09, 11:33

MPPS SCU

#6 Post by analih »

Hi deepujames!

I need a MPPS SCU to test with a MPPS SCP. Could you please send me your application to test with my MPPS SCP? Thank you.

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest