#include <Bzip2Compressor.h>


Public Member Functions | |
| Bzip2Compressor (::Compression::CompressionLevel compression_level,::Compression::CompressorFactory_ptr compressor_factory) | |
| virtual void | compress (const ::Compression::Buffer &source,::Compression::Buffer &target) |
| virtual void | decompress (const ::Compression::Buffer &source,::Compression::Buffer &target) |
Definition at line 33 of file Bzip2Compressor.h.
| TAO::Bzip2Compressor::Bzip2Compressor | ( | ::Compression::CompressionLevel | compression_level, | |
| ::Compression::CompressorFactory_ptr | compressor_factory | |||
| ) |
Definition at line 3 of file Bzip2Compressor.cpp.
: Bzip2Compressor.cpp 84843 2009-03-16 16:38:54Z msmit $") #include "bzlib.h"
| void TAO::Bzip2Compressor::compress | ( | const ::Compression::Buffer & | source, | |
| ::Compression::Buffer & | target | |||
| ) | [virtual] |
Implements TAO::BaseCompressor.
Definition at line 11 of file Bzip2Compressor.cpp.
{
Bzip2Compressor::Bzip2Compressor (
::Compression::CompressionLevel compression_level,
::Compression::CompressorFactory_ptr compressor_factory) :
BaseCompressor (compression_level, compressor_factory)
{
}
void
Bzip2Compressor::compress (
const ::Compression::Buffer & source,
::Compression::Buffer & target
)
{
unsigned int max_length =
static_cast <unsigned int> (source.length () * 1.01) + 600;
target.length (static_cast <CORBA::ULong> (max_length));
int const retval = ::BZ2_bzBuffToBuffCompress (reinterpret_cast <char*>(target.get_buffer ()),
&max_length,
reinterpret_cast <char*>(const_cast<CORBA::Octet*>(source.get_buffer ())),
source.length (),
9,
1,
this->compression_level () * 25);
if (retval != BZ_OK)
{
| void TAO::Bzip2Compressor::decompress | ( | const ::Compression::Buffer & | source, | |
| ::Compression::Buffer & | target | |||
| ) | [virtual] |
Implements TAO::BaseCompressor.
Definition at line 42 of file Bzip2Compressor.cpp.
{
target.length (static_cast <CORBA::ULong> (max_length));
}
// Update statistics for this compressor
this->update_stats (source.length (), target.length ());
}
void
Bzip2Compressor::decompress (
const ::Compression::Buffer & source,
::Compression::Buffer & target)
{
unsigned int max_length = static_cast <unsigned int> (target.length ());
// todo, check 0,1 values
int const retval = ::BZ2_bzBuffToBuffDecompress (reinterpret_cast <char*>(target.get_buffer ()),
&max_length,
reinterpret_cast <char*>(const_cast<CORBA::Octet*>(source.get_buffer ())),
source.length (),
0,
1);
1.7.0