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));