comparison Framework/Oracle/GetOrthancImageCommand.cpp @ 1152:78b8bfe154bc broker

GetOrthancImageCommand::SetFrameUri()
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 15 Nov 2019 17:52:12 +0100
parents a0a33e5ea5bb
children c1c83c1fb837
comparison
equal deleted inserted replaced
1151:48befc2bf66d 1152:78b8bfe154bc
42 hasExpectedFormat_ = true; 42 hasExpectedFormat_ = true;
43 expectedFormat_ = format; 43 expectedFormat_ = format;
44 } 44 }
45 45
46 46
47 void GetOrthancImageCommand::SetInstanceUri(const std::string& instance, 47 static std::string GetFormatSuffix(Orthanc::PixelFormat pixelFormat)
48 Orthanc::PixelFormat pixelFormat)
49 { 48 {
50 uri_ = "/instances/" + instance;
51
52 switch (pixelFormat) 49 switch (pixelFormat)
53 { 50 {
54 case Orthanc::PixelFormat_RGB24: 51 case Orthanc::PixelFormat_RGB24:
55 uri_ += "/preview"; 52 return "preview";
56 break;
57 53
58 case Orthanc::PixelFormat_Grayscale16: 54 case Orthanc::PixelFormat_Grayscale16:
59 uri_ += "/image-uint16"; 55 return "image-uint16";
60 break;
61 56
62 case Orthanc::PixelFormat_SignedGrayscale16: 57 case Orthanc::PixelFormat_SignedGrayscale16:
63 uri_ += "/image-int16"; 58 return "image-int16";
64 break;
65 59
66 default: 60 default:
67 throw Orthanc::OrthancException(Orthanc::ErrorCode_ParameterOutOfRange); 61 throw Orthanc::OrthancException(Orthanc::ErrorCode_ParameterOutOfRange);
68 } 62 }
69 } 63 }
70 64
71 65
66 void GetOrthancImageCommand::SetInstanceUri(const std::string& instance,
67 Orthanc::PixelFormat pixelFormat)
68 {
69 uri_ = "/instances/" + instance + "/" + GetFormatSuffix(pixelFormat);
70 }
71
72
73 void GetOrthancImageCommand::SetFrameUri(const std::string& instance,
74 unsigned int frame,
75 Orthanc::PixelFormat pixelFormat)
76 {
77 uri_ = ("/instances/" + instance + "/frames/" +
78 boost::lexical_cast<std::string>(frame) + "/" + GetFormatSuffix(pixelFormat));
79 }
80
81
72 void GetOrthancImageCommand::ProcessHttpAnswer(boost::weak_ptr<IObserver> receiver, 82 void GetOrthancImageCommand::ProcessHttpAnswer(boost::weak_ptr<IObserver> receiver,
73 IMessageEmitter& emitter, 83 IMessageEmitter& emitter,
74 const std::string& answer, 84 const std::string& answer,
75 const HttpHeaders& answerHeaders) const 85 const HttpHeaders& answerHeaders) const
76 { 86 {