diff OrthancServer/ServerContext.h @ 227:209ca3f6db62

dicom-scu from rest
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 30 Nov 2012 10:57:34 +0100
parents 8a26a8e85edf
children 5368bbe813cf
line wrap: on
line diff
--- a/OrthancServer/ServerContext.h	Fri Nov 30 09:45:29 2012 +0100
+++ b/OrthancServer/ServerContext.h	Fri Nov 30 10:57:34 2012 +0100
@@ -38,6 +38,11 @@
 
 namespace Orthanc
 {
+  /**
+   * This class is responsible for maintaining the storage area on the
+   * filesystem (including compression), as well as the index of the
+   * DICOM store. It implements the required locking mechanisms.
+   **/
   class ServerContext
   {
   private:
@@ -52,16 +57,7 @@
       return index_;
     }
 
-    // TODO REMOVE THIS, SINCE IT IS NOT PROTECTED BY MUTEXES
-    FileStorage& GetFileStorage()
-    {
-      return storage_;
-    }
-
-    void RemoveFile(const std::string& fileUuid)
-    {
-      storage_.Remove(fileUuid);
-    }
+    void RemoveFile(const std::string& fileUuid);
 
     StoreStatus Store(const char* dicomFile,
                       size_t dicomSize,
@@ -75,5 +71,10 @@
 
     void ReadJson(Json::Value& result,
                   const std::string& instancePublicId);
+
+    // TODO CACHING MECHANISM AT THIS POINT
+    void ReadFile(std::string& result,
+                  const std::string& instancePublicId,
+                  AttachedFileType content);
   };
 }