Medical Imaging Interaction Toolkit  2018.4.99-e1268d66
Medical Imaging Interaction Toolkit
mitkDICOMweb.h
Go to the documentation of this file.
1 /*============================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center (DKFZ)
6 All rights reserved.
7 
8 Use of this source code is governed by a 3-clause BSD license that can be
9 found in the LICENSE file.
10 
11 ============================================================================*/
12 
13 #ifndef mitkDICOMweb_h
14 #define mitkDICOMweb_h
15 
16 #include <MitkDICOMwebExports.h>
17 
18 #include "cpprest/asyncrt_utils.h"
19 #include "cpprest/http_client.h"
20 #include <iostream>
21 #include <mitkCommon.h>
22 #include <mitkIRESTManager.h>
23 #include <mitkRESTUtil.h>
24 
25 #include <usGetModuleContext.h>
26 #include <usModuleContext.h>
27 
36 namespace mitk
37 {
38 
40  {
41  public:
42  typedef web::http::uri_builder MitkUriBuilder;
46 
47  DICOMweb();
48 
55  DICOMweb(utility::string_t baseURI);
56 
64  pplx::task<void> SendSTOW(utility::string_t filePath, utility::string_t studyUID);
65 
76  pplx::task<void> SendWADO(utility::string_t filePath,
77  utility::string_t studyUID,
78  utility::string_t seriesUID,
79  utility::string_t instanceUID);
80 
90  pplx::task<std::string> SendWADO(utility::string_t folderPath,
91  utility::string_t studyUID,
92  utility::string_t seriesUID);
93 
106  pplx::task<web::json::value> SendQIDO(mitk::RESTUtil::ParamMap map);
107 
108  private:
112  utility::string_t CreateQIDOUri(mitk::RESTUtil::ParamMap map);
113 
117  utility::string_t CreateWADOUri(utility::string_t studyUID,
118  utility::string_t seriesUID,
119  utility::string_t instanceUID);
120 
124  utility::string_t CreateSTOWUri(utility::string_t studyUID);
125 
130  void InitializeRESTManager();
131 
132  utility::string_t m_BaseURI;
133  mitk::IRESTManager *m_RESTManager;
134  };
135 }
136 
137 #endif // DICOMweb_h
web::http::http_response MitkResponse
Definition: mitkDICOMweb.h:44
This is a microservice interface for managing REST requests.
DataCollection - Class to facilitate loading/accessing structured data.
web::http::methods methods
web::http::methods MitkRESTMethods
Definition: mitkDICOMweb.h:45
web::http::http_request MitkRequest
Definition: mitkDICOMweb.h:43
web::http::uri_builder MitkUriBuilder
Definition: mitkDICOMweb.h:42
web::http::http_response http_response
web::http::http_request http_request
std::map< utility::string_t, utility::string_t > ParamMap
Definition: mitkRESTUtil.h:27
#define MITKDICOMWEB_EXPORT