Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #ifndef TAO_COMPRESSION_MANAGER_H
00014 #define TAO_COMPRESSION_MANAGER_H
00015
00016 #include "ace/pre.h"
00017
00018 #include "tao/Compression/compression_export.h"
00019
00020 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00021 # pragma once
00022 #endif
00023
00024 #include "tao/Compression/Compression.h"
00025 #include "tao/LocalObject.h"
00026
00027 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00028
00029 namespace TAO
00030 {
00031 class TAO_Compression_Export CompressionManager :
00032 public virtual ::Compression::CompressionManager,
00033 public virtual ::CORBA::LocalObject
00034 {
00035 virtual void register_factory (::Compression::CompressorFactory_ptr
00036 compressor_factory);
00037
00038 virtual void unregister_factory (::Compression::CompressorId
00039 compressor_id);
00040
00041 virtual ::Compression::CompressorFactory_ptr get_factory
00042 (::Compression::CompressorId compressor_id);
00043
00044 virtual ::Compression::Compressor_ptr get_compressor
00045 (::Compression::CompressorId compressor_id,
00046 ::Compression::CompressionLevel compression_level);
00047
00048 virtual ::Compression::CompressorFactorySeq *get_factories (void);
00049
00050 private:
00051 TAO_SYNCH_MUTEX mutex_;
00052 ::Compression::CompressorFactorySeq factories_;
00053 };
00054 }
00055
00056 TAO_END_VERSIONED_NAMESPACE_DECL
00057
00058 #include "ace/post.h"
00059
00060 #endif