comparison Core/FileStorage/CompressedFileStorageAccessor.h @ 1124:790ff7a5b3bf

IStorageArea abstraction
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 05 Sep 2014 16:28:34 +0200
parents 6c5a77637b23
children bf67431a7383
comparison
equal deleted inserted replaced
1123:6c5a77637b23 1124:790ff7a5b3bf
30 **/ 30 **/
31 31
32 32
33 #pragma once 33 #pragma once
34 34
35 #include "IStorageArea.h"
35 #include "StorageAccessor.h" 36 #include "StorageAccessor.h"
36 #include "FilesystemStorage.h"
37 #include "../Compression/ZlibCompressor.h" 37 #include "../Compression/ZlibCompressor.h"
38 38
39 namespace Orthanc 39 namespace Orthanc
40 { 40 {
41 class CompressedFileStorageAccessor : public StorageAccessor 41 class CompressedFileStorageAccessor : public StorageAccessor
42 { 42 {
43 private: 43 private:
44 FilesystemStorage& storage_; 44 IStorageArea& storage_;
45 ZlibCompressor zlib_; 45 ZlibCompressor zlib_;
46 CompressionType compressionType_; 46 CompressionType compressionType_;
47 47
48 protected: 48 protected:
49 virtual FileInfo WriteInternal(const void* data, 49 virtual FileInfo WriteInternal(const void* data,
50 size_t size, 50 size_t size,
51 FileContentType type); 51 FileContentType type);
52 52
53 public: 53 public:
54 CompressedFileStorageAccessor(FilesystemStorage& storage); 54 CompressedFileStorageAccessor(IStorageArea& storage);
55 55
56 void SetCompressionForNextOperations(CompressionType compression) 56 void SetCompressionForNextOperations(CompressionType compression)
57 { 57 {
58 compressionType_ = compression; 58 compressionType_ = compression;
59 } 59 }