How to populate request MessageId when deriving from DcmScu
Moderator: Moderator Team
Re: How to populate request MessageId when deriving from DcmScu
Thank you so much! I hope for the best, and look forward to enjoying the N-SET experience.
Re: How to populate request MessageId when deriving from DcmScu
Hi again Michael,
I once again stumbled across a problem caused by the private DcmSCU::nextMessageID function. DcmSCU appears to be designed with extensibility through inheritance in mind. If this is the intent, I believe that the nextMessageID must be made protected instead of private, as there are no other way to override some of the virtual functions in a meaningful way.
I have therefore created https://github.com/DCMTK/dcmtk/pull/70 to address this issue. Please have a look and see if it can be merged to master.
Thanks,
Jøger Hansegård
I once again stumbled across a problem caused by the private DcmSCU::nextMessageID function. DcmSCU appears to be designed with extensibility through inheritance in mind. If this is the intent, I believe that the nextMessageID must be made protected instead of private, as there are no other way to override some of the virtual functions in a meaningful way.
I have therefore created https://github.com/DCMTK/dcmtk/pull/70 to address this issue. Please have a look and see if it can be merged to master.
Thanks,
Jøger Hansegård
-
- DCMTK Developer
- Posts: 2054
- Joined: Fri, 2004-11-05, 13:47
- Location: Oldenburg, Germany
- Contact:
Re: How to populate request MessageId when deriving from DcmScu
Hi Jøger,
Your assumption is correct - another assumption was that there is no need to manually choose a Message ID at all, what is your use case to do so?
Best regards,
Michael
Your assumption is correct - another assumption was that there is no need to manually choose a Message ID at all, what is your use case to do so?
Best regards,
Michael
Re: How to populate request MessageId when deriving from DcmScu
Hi Michael,
The general issue is that it is impossible for a derived class to reimplement DcmSCU::sendMOVERequest or any of the other sendXXXRequest functions as long as the nextMessageID function is private.
The specific issue, is that we want to get hold of the message ID before the C-MOVE request is sent to the server. This message ID can be used by the store SCP and matched with the 'Move Originator Message ID' (0000,0110) from the incoming C-STORE request. If an application has two instances of DcmSCU, that are concurrently sending C-MOVE requests, we could then differentiate between the incoming C-STORE requests based upon the message ID from the MoveSCU, and the 'Move Originator Message ID', as long as this is provided by the PACS. For example, the images could be stored to different directories for the two different DcmSCUs.
Does this answer your question Michael?
Thanks
Jøger
The general issue is that it is impossible for a derived class to reimplement DcmSCU::sendMOVERequest or any of the other sendXXXRequest functions as long as the nextMessageID function is private.
The specific issue, is that we want to get hold of the message ID before the C-MOVE request is sent to the server. This message ID can be used by the store SCP and matched with the 'Move Originator Message ID' (0000,0110) from the incoming C-STORE request. If an application has two instances of DcmSCU, that are concurrently sending C-MOVE requests, we could then differentiate between the incoming C-STORE requests based upon the message ID from the MoveSCU, and the 'Move Originator Message ID', as long as this is provided by the PACS. For example, the images could be stored to different directories for the two different DcmSCUs.
Does this answer your question Michael?
Thanks
Jøger
-
- DCMTK Developer
- Posts: 2054
- Joined: Fri, 2004-11-05, 13:47
- Location: Oldenburg, Germany
- Contact:
Re: How to populate request MessageId when deriving from DcmScu
Hi,
yes, I understand, thanks for pointing me to the Move Originator Message ID which I did not have in mind.
I pushed the patch to our internal testing branch and it will be available the next time we forward this to master.
Thanks for contributing
Best regards,
Michael
yes, I understand, thanks for pointing me to the Move Originator Message ID which I did not have in mind.
I pushed the patch to our internal testing branch and it will be available the next time we forward this to master.
Thanks for contributing
Best regards,
Michael
Re: How to populate request MessageId when deriving from DcmScu
Great news! Thank you Micahael.
Jøger
Jøger
Who is online
Users browsing this forum: Google [Bot] and 1 guest