Mercurial > hg > orthanc
comparison OrthancServer/main.cpp @ 2381:b8969010b534
uncoupling DCMTK primitives from Orthanc::Configuration
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Tue, 29 Aug 2017 19:59:01 +0200 |
parents | 3ec85ff48374 |
children | 7284093111b0 |
comparison
equal
deleted
inserted
replaced
2380:96b3ec054b69 | 2381:b8969010b534 |
---|---|
85 server_.Store(id, toStore); | 85 server_.Store(id, toStore); |
86 } | 86 } |
87 } | 87 } |
88 }; | 88 }; |
89 | 89 |
90 | |
91 | |
92 class ModalitiesFromConfiguration : public Orthanc::DicomServer::IRemoteModalities | |
93 { | |
94 public: | |
95 virtual bool IsSameAETitle(const std::string& aet1, | |
96 const std::string& aet2) | |
97 { | |
98 return Orthanc::Configuration::IsSameAETitle(aet1, aet2); | |
99 } | |
100 | |
101 virtual bool LookupAETitle(RemoteModalityParameters& modality, | |
102 const std::string& aet) | |
103 { | |
104 return Orthanc::Configuration::LookupDicomModalityUsingAETitle(modality, aet); | |
105 } | |
106 }; | |
90 | 107 |
91 | 108 |
92 class MyDicomServerFactory : | 109 class MyDicomServerFactory : |
93 public IStoreRequestHandlerFactory, | 110 public IStoreRequestHandlerFactory, |
94 public IFindRequestHandlerFactory, | 111 public IFindRequestHandlerFactory, |
795 LOG(WARNING) << "The DICOM server is disabled"; | 812 LOG(WARNING) << "The DICOM server is disabled"; |
796 return StartHttpServer(context, restApi, plugins); | 813 return StartHttpServer(context, restApi, plugins); |
797 } | 814 } |
798 | 815 |
799 MyDicomServerFactory serverFactory(context); | 816 MyDicomServerFactory serverFactory(context); |
800 | 817 OrthancApplicationEntityFilter dicomFilter(context); |
801 // DICOM server | 818 ModalitiesFromConfiguration modalities; |
819 | |
820 // Setup the DICOM server | |
802 DicomServer dicomServer; | 821 DicomServer dicomServer; |
803 OrthancApplicationEntityFilter dicomFilter(context); | 822 dicomServer.SetRemoteModalities(modalities); |
804 dicomServer.SetCalledApplicationEntityTitleCheck(Configuration::GetGlobalBoolParameter("DicomCheckCalledAet", false)); | 823 dicomServer.SetCalledApplicationEntityTitleCheck(Configuration::GetGlobalBoolParameter("DicomCheckCalledAet", false)); |
805 dicomServer.SetStoreRequestHandlerFactory(serverFactory); | 824 dicomServer.SetStoreRequestHandlerFactory(serverFactory); |
806 dicomServer.SetMoveRequestHandlerFactory(serverFactory); | 825 dicomServer.SetMoveRequestHandlerFactory(serverFactory); |
807 dicomServer.SetFindRequestHandlerFactory(serverFactory); | 826 dicomServer.SetFindRequestHandlerFactory(serverFactory); |
808 dicomServer.SetAssociationTimeout(Configuration::GetGlobalUnsignedIntegerParameter("DicomScpTimeout", 30)); | 827 dicomServer.SetAssociationTimeout(Configuration::GetGlobalUnsignedIntegerParameter("DicomScpTimeout", 30)); |