Mercurial > hg > orthanc
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 } |