feat: Replace Patient Root query to Study Root query, add Implicit Transfer Syntax.

This commit is contained in:
kradchen
2025-05-15 14:03:28 +08:00
parent 6b81839f15
commit d43ae7f601
3 changed files with 10 additions and 3 deletions

View File

@@ -41,7 +41,9 @@ bool MoveWorker::initDcmSCU()
mScu->setPeerAETitle(mStrPeerTitle); mScu->setPeerAETitle(mStrPeerTitle);
OFList<OFString> syntaxes; OFList<OFString> syntaxes;
syntaxes.push_back(UID_LittleEndianExplicitTransferSyntax); syntaxes.push_back(UID_LittleEndianExplicitTransferSyntax);
mScu->addPresentationContext(UID_MOVEPatientRootQueryRetrieveInformationModel, syntaxes); syntaxes.push_back(UID_LittleEndianImplicitTransferSyntax);
mScu->addPresentationContext(UID_MOVEStudyRootQueryRetrieveInformationModel, syntaxes);
OFCondition cond = mScu->initNetwork(); OFCondition cond = mScu->initNetwork();
if (cond.bad()) if (cond.bad())
{ {
@@ -67,7 +69,7 @@ void MoveWorker::moveBySeriesUID(const QString& studyInstanceUID, const QString&
} }
mMoveStoreThread->setScpConfig(mStrOurTitle,static_cast<unsigned short>(mUlOurPort)); mMoveStoreThread->setScpConfig(mStrOurTitle,static_cast<unsigned short>(mUlOurPort));
mMoveStoreThread->start(); mMoveStoreThread->start();
T_ASC_PresentationContextID pcid = mScu->findPresentationContextID(UID_MOVEPatientRootQueryRetrieveInformationModel,""); T_ASC_PresentationContextID pcid = mScu->findPresentationContextID(UID_MOVEStudyRootQueryRetrieveInformationModel,"");
OFList<RetrieveResponse*> responses; OFList<RetrieveResponse*> responses;
DcmDataset dataset; DcmDataset dataset;
std::string strStudyInstanceUID = studyInstanceUID.toStdString(); std::string strStudyInstanceUID = studyInstanceUID.toStdString();

View File

@@ -37,7 +37,12 @@ bool QueryWorker::initDcmSCU()
m_Scu->setPeerAETitle(m_strPeerTitle_.toStdString()); m_Scu->setPeerAETitle(m_strPeerTitle_.toStdString());
OFList<OFString> syntaxes; OFList<OFString> syntaxes;
syntaxes.push_back(UID_LittleEndianExplicitTransferSyntax); syntaxes.push_back(UID_LittleEndianExplicitTransferSyntax);
syntaxes.push_back(UID_LittleEndianImplicitTransferSyntax);
// m_Scu->addPresentationContext(UID_FINDPatientRootQueryRetrieveInformationModel, syntaxes);
m_Scu->addPresentationContext(UID_FINDStudyRootQueryRetrieveInformationModel, syntaxes); m_Scu->addPresentationContext(UID_FINDStudyRootQueryRetrieveInformationModel, syntaxes);
OFCondition cond = m_Scu->initNetwork(); OFCondition cond = m_Scu->initNetwork();
if (cond.bad()) if (cond.bad())
{ {

View File

@@ -90,7 +90,7 @@ bool dcm_cfind_callback::verify()
dcm_cfind::dcm_cfind(const char *peerIp, unsigned long peerPort, const char *peerTitle, const char *ourTile) dcm_cfind::dcm_cfind(const char *peerIp, unsigned long peerPort, const char *peerTitle, const char *ourTile)
: abortAssociation(false) : abortAssociation(false)
, abstractSyntax(UID_FINDPatientRootQueryRetrieveInformationModel) , abstractSyntax(UID_FINDStudyRootQueryRetrieveInformationModel)
, acse_timeout(30) , acse_timeout(30)
, blockMode(DIMSE_BLOCKING) , blockMode(DIMSE_BLOCKING)
, dimse_timeout(0) , dimse_timeout(0)