NAVTOR SDK  v.3.0
Software Development Kit for fast and efficient development of ECDIS, ECS and generic marine applications
base_archiver_interface.h
Go to the documentation of this file.
1 #ifndef SDK_ARCH_ARCHIVER_INTERFACE_H_
11 #define SDK_ARCH_ARCHIVER_INTERFACE_H_
12 
13 #include <base/inc/sdk_results.h>
14 #include <base/inc/sdk_ref_ptr.h>
19 
20 namespace sdk {
21 namespace arch {
22 
23 FWD_DECL_INTERFACE(IBaseArchiver);
24 typedef IBaseArchiverSP BaseArchiverSP;
25 typedef IBaseArchiverSCP BaseArchiverSCP;
26 
28 // \brief Set of property names for archivers
31 static const wchar_t kBaseArchiverProp_CompressionLevel[] =
32  L"BaseArchiverProp_CompressionLevel";
33 
35 static const wchar_t kBaseArchiverProp_CompressionSettings[] =
36  L"BaseArchiverProp_CompressionSettings";
37 
42 {
44 };
45 
48 typedef enum CompressionLevel
49 {
62 
65 typedef enum CompressionSettings
66 {
71 
75 {
76 public:
78  virtual SDKResult SDK_CALLTYPE Compress(
79  const sdk::SDKParametersSP& compression_params,
80  const sdk::base::SDKResourceSP& in_resource,
81  const sdk::base::SDKResourceSP& out_resource) const throw() = 0;
82 
84  virtual SDKResult SDK_CALLTYPE Decompress(
85  const sdk::SDKParametersSP& decompression_params,
86  const sdk::base::SDKResourceSP& in_resource,
87  const sdk::base::SDKResourceSP& out_resource) const throw() = 0;
88 
90  //virtual SDKResult SDK_CALLTYPE SetProperty(const SDKString& id,
91  // const SDKAny& value) throw() = 0;
92  //virtual SDKResult SDK_CALLTYPE GetProperty(const SDKString& id,
93  // SDKAny& value) const throw() = 0;
94 
96  SDK_IMPLEMENT_IID(IBaseArchiver)
97  SDK_END_INTERFACE(IBaseArchiver)
98 };
99 SDK_DECLARE_IID(IBaseArchiver)
100 
101 } // namespace arch
102 } // namespace sdk
103 
104 #endif // SDK_ARCH_ARCHIVER_INTERFACE_H_
sdk::arch::IBaseArchiver::Compress
virtual SDKResult SDK_CALLTYPE Compress(const sdk::SDKParametersSP &compression_params, const sdk::base::SDKResourceSP &in_resource, const sdk::base::SDKResourceSP &out_resource) const =0
Compresses the data from input resource(stream) and stores it to output.
sdk::arch::kBaseArchiverProp_CompressionSettings
static const wchar_t kBaseArchiverProp_CompressionSettings[]
Compression settings, one of numeric values from CompressionSettings enum.
Definition: base_archiver_interface.h:35
sdk_results.h
A list of SDK error/return results.
sdk::arch::kCompressionDecompressionParameter_ZIPExtraFieldData
@ kCompressionDecompressionParameter_ZIPExtraFieldData
ZIP extra field data.
Definition: base_archiver_interface.h:43
sdk::arch::kCompressionLevel_Faster
@ kCompressionLevel_Faster
Faster compression.
Definition: base_archiver_interface.h:54
sdk::arch::CompressionLevel
CompressionLevel
Possible value for kBaseArchiverProp_CompressionLevel property.
Definition: base_archiver_interface.h:48
sdk::arch::kBaseArchiverProp_CompressionLevel
static const wchar_t kBaseArchiverProp_CompressionLevel[]
Compression level, one of numeric values from CompressionLevel enum.
Definition: base_archiver_interface.h:31
sdk::arch::kCompressionLevel_Fast
@ kCompressionLevel_Fast
Fast compression.
Definition: base_archiver_interface.h:55
sdk::arch::kCompressionLevel_ExtraFast
@ kCompressionLevel_ExtraFast
Extra fast compression.
Definition: base_archiver_interface.h:53
sdk_ref_ptr.h
Interfaces wrapper with reference count control.
generic_resource_interface.h
Generic data resource interfaces.
sdk::arch::kCompressionLevel_NoCompression
@ kCompressionLevel_NoCompression
No compression.
Definition: base_archiver_interface.h:51
sdk::arch::IBaseArchiver
Base archiver interface for performing compression/decompression.
Definition: base_archiver_interface.h:74
sdk::arch::kCompressionLevel_UltraCompact
@ kCompressionLevel_UltraCompact
Ultra compact level of compression.
Definition: base_archiver_interface.h:60
parameters_interface.h
Provides access to members for managing a parameter set.
sdk::arch::kCompressionLevel_UltraFast
@ kCompressionLevel_UltraFast
Ultra fast compression.
Definition: base_archiver_interface.h:52
sdk::arch::CompressionDecompressionParameters
CompressionDecompressionParameters
Compression/Decompression parameters possible fields.
Definition: base_archiver_interface.h:41
SDKResult
SDKInt32 SDKResult
Type of all error or return codes which SDK functions can end with.
Definition: sdk_results.h:17
sdk::arch::kCompressionLevel_HighCompact
@ kCompressionLevel_HighCompact
High compact level of compression.
Definition: base_archiver_interface.h:58
sdk::arch::kCompressionSettings_AVCS
@ kCompressionSettings_AVCS
Compression settings, which is similar to settings, which AVCS is using.
Definition: base_archiver_interface.h:69
SDKRefPtr
A smart pointer class for managing SDK components interface pointers.
Definition: sdk_ref_ptr.h:23
sdk_component_interface.h
Common base SDK interfaces.
sdk::ISDKNamedProperties
Provides access to members that control the named properties.
Definition: named_properties_interface.h:29
sdk::arch::CompressionSettings
CompressionSettings
Available types of compression settings set for given archiver.
Definition: base_archiver_interface.h:65
sdk::arch::kCompressionLevel_Normal
@ kCompressionLevel_Normal
Normal compression by speed and level.
Definition: base_archiver_interface.h:56
sdk::arch::kCompressionSettings_Default
@ kCompressionSettings_Default
Default compression settings for given archiver.
Definition: base_archiver_interface.h:67
sdk::arch::kCompressionLevel_Compact
@ kCompressionLevel_Compact
Compact level of compression.
Definition: base_archiver_interface.h:57
named_properties_interface.h
Object generic named properties interface.
sdk::arch::IBaseArchiver::Decompress
virtual SDKResult SDK_CALLTYPE Decompress(const sdk::SDKParametersSP &decompression_params, const sdk::base::SDKResourceSP &in_resource, const sdk::base::SDKResourceSP &out_resource) const =0
Decompresses the data from input resource(stream) and stores it to output.
sdk::arch::kCompressionLevel_Default
@ kCompressionLevel_Default
Default compression level.
Definition: base_archiver_interface.h:50
sdk::arch::kCompressionLevel_ExtraCompact
@ kCompressionLevel_ExtraCompact
Extra compact level of compression.
Definition: base_archiver_interface.h:59
sdk::arch::kCompressionSettings_PRIMAR
@ kCompressionSettings_PRIMAR
Compression settings, which is similar to settings, which PRIMAR is using.
Definition: base_archiver_interface.h:68
FWD_DECL_INTERFACE
FWD_DECL_INTERFACE(ILWEParserWrapper)
Provides a wrapper around the message parser to get, add or remove the.