Mercurial > hg > orthanc
comparison OrthancServer/ServerContext.h @ 3021:2cbafb5d5a62
renamed LookupResource::IVisitor as ServerContext::ILookupVisitor
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Sat, 15 Dec 2018 16:29:50 +0100 |
parents | abe49ca61cd5 |
children | 039a9d262d64 4e43e67f8ecf |
comparison
equal
deleted
inserted
replaced
3015:abe49ca61cd5 | 3021:2cbafb5d5a62 |
---|---|
61 * filesystem (including compression), as well as the index of the | 61 * filesystem (including compression), as well as the index of the |
62 * DICOM store. It implements the required locking mechanisms. | 62 * DICOM store. It implements the required locking mechanisms. |
63 **/ | 63 **/ |
64 class ServerContext : private JobsRegistry::IObserver | 64 class ServerContext : private JobsRegistry::IObserver |
65 { | 65 { |
66 public: | |
67 class ILookupVisitor : public boost::noncopyable | |
68 { | |
69 public: | |
70 virtual ~ILookupVisitor() | |
71 { | |
72 } | |
73 | |
74 virtual bool IsDicomAsJsonNeeded() const = 0; | |
75 | |
76 virtual void MarkAsComplete() = 0; | |
77 | |
78 virtual void Visit(const std::string& publicId, | |
79 const std::string& instanceId, | |
80 const DicomMap& mainDicomTags, | |
81 const Json::Value* dicomAsJson) = 0; | |
82 }; | |
83 | |
84 | |
66 private: | 85 private: |
67 enum LookupMode | 86 enum LookupMode |
68 { | 87 { |
69 LookupMode_DatabaseOnly, | 88 LookupMode_DatabaseOnly, |
70 LookupMode_DiskOnAnswer, | 89 LookupMode_DiskOnAnswer, |
341 return httpHandler_; | 360 return httpHandler_; |
342 } | 361 } |
343 | 362 |
344 void Stop(); | 363 void Stop(); |
345 | 364 |
346 void Apply(LookupResource::IVisitor& visitor, | 365 void Apply(ILookupVisitor& visitor, |
347 const ::Orthanc::LookupResource& lookup, | 366 const ::Orthanc::LookupResource& lookup, |
348 size_t since, | 367 size_t since, |
349 size_t limit); | 368 size_t limit); |
350 | 369 |
351 bool LookupOrReconstructMetadata(std::string& target, | 370 bool LookupOrReconstructMetadata(std::string& target, |