ldas-tools-framecpp  2.9.3
Namespaces | Enumerations | Functions | Variables
Compression.hh File Reference
#include <limits>
#include <iostream>
#include <sstream>
#include <stdexcept>
#include <boost/shared_array.hpp>
#include "ldastoolsal/types.hh"
#include "ldastoolsal/unordered_map.hh"
#include "framecpp/Common/CompressionException.hh"
Include dependency graph for Compression.hh:

Namespaces

 FrameCPP
 I/O library for implementing the LIGO/Virgo frame specification.
 
 FrameCPP::Compression
 Routines related to compression algorithems.
 

Enumerations

enum  FrameCPP::Compression::data_types_type {
  FrameCPP::Compression::FR_VECT_C = 0 , FrameCPP::Compression::FR_VECT_2S = 1 , FrameCPP::Compression::FR_VECT_8R = 2 , FrameCPP::Compression::FR_VECT_4R = 3 ,
  FrameCPP::Compression::FR_VECT_4S = 4 , FrameCPP::Compression::FR_VECT_8S = 5 , FrameCPP::Compression::FR_VECT_8C = 6 , FrameCPP::Compression::FR_VECT_16C = 7 ,
  FrameCPP::Compression::FR_VECT_STRING = 8 , FrameCPP::Compression::FR_VECT_2U = 9 , FrameCPP::Compression::FR_VECT_4U = 10 , FrameCPP::Compression::FR_VECT_8U = 11 ,
  FrameCPP::Compression::FR_VECT_1U = 12 , FrameCPP::Compression::FR_VECT_C = 0 , FrameCPP::Compression::FR_VECT_2S = 1 , FrameCPP::Compression::FR_VECT_8R = 2 ,
  FrameCPP::Compression::FR_VECT_4R = 3 , FrameCPP::Compression::FR_VECT_4S = 4 , FrameCPP::Compression::FR_VECT_8S = 5 , FrameCPP::Compression::FR_VECT_8C = 6 ,
  FrameCPP::Compression::FR_VECT_16C = 7 , FrameCPP::Compression::FR_VECT_STRING = 8 , FrameCPP::Compression::FR_VECT_2U = 9 , FrameCPP::Compression::FR_VECT_4U = 10 ,
  FrameCPP::Compression::FR_VECT_8U = 11 , FrameCPP::Compression::FR_VECT_1U = 12 , FrameCPP::Compression::FR_VECT_C = 0 , FrameCPP::Compression::FR_VECT_2S = 1 ,
  FrameCPP::Compression::FR_VECT_8R = 2 , FrameCPP::Compression::FR_VECT_4R = 3 , FrameCPP::Compression::FR_VECT_4S = 4 , FrameCPP::Compression::FR_VECT_8S = 5 ,
  FrameCPP::Compression::FR_VECT_8C = 6 , FrameCPP::Compression::FR_VECT_16C = 7 , FrameCPP::Compression::FR_VECT_STRING = 8 , FrameCPP::Compression::FR_VECT_2U = 9 ,
  FrameCPP::Compression::FR_VECT_4U = 10 , FrameCPP::Compression::FR_VECT_8U = 11 , FrameCPP::Compression::FR_VECT_1U = 12
}
 Enumerated type for supported vector data types. More...
 
enum  FrameCPP::Compression::compress_type {
  FrameCPP::Compression::MODE_RAW = 0 , FrameCPP::Compression::MODE_GZIP = 0x10000 , FrameCPP::Compression::MODE_DIFF = 0x20000 , FrameCPP::Compression::MODE_DIFF_GZIP = 0x30000 ,
  FrameCPP::Compression::MODE_ZERO_SUPPRESS_SHORT = 0x40000 , FrameCPP::Compression::MODE_ZERO_SUPPRESS_INT_FLOAT = 0x50000 , FrameCPP::Compression::MODE_ZERO_SUPPRESS_WORD_4 = 0x60000 , FrameCPP::Compression::MODE_ZERO_SUPPRESS_WORD_8 = 0x70000 ,
  FrameCPP::Compression::MODE_ZERO_SUPPRESS_2_OTHERWISE_GZIP = 0x1000000 , FrameCPP::Compression::MODE_ZERO_SUPPRESS_2_4_OTHERWISE_GZIP = 0x2000000 , FrameCPP::Compression::MODE_ZERO_SUPPRESS_2_4_8_OTHERWISE_GZIP = 0x3000000 , FrameCPP::Compression::MODE_BEST_COMPRESSION = 0x4000000 ,
  FrameCPP::Compression::MODE_RAW = 0 , FrameCPP::Compression::MODE_GZIP = 0x10000 , FrameCPP::Compression::MODE_DIFF = 0x20000 , FrameCPP::Compression::MODE_DIFF_GZIP = 0x30000 ,
  FrameCPP::Compression::MODE_ZERO_SUPPRESS_SHORT = 0x40000 , FrameCPP::Compression::MODE_ZERO_SUPPRESS_INT_FLOAT = 0x50000 , FrameCPP::Compression::MODE_ZERO_SUPPRESS_WORD_4 = 0x60000 , FrameCPP::Compression::MODE_ZERO_SUPPRESS_WORD_8 = 0x70000 ,
  FrameCPP::Compression::MODE_ZERO_SUPPRESS_2_OTHERWISE_GZIP = 0x1000000 , FrameCPP::Compression::MODE_ZERO_SUPPRESS_2_4_OTHERWISE_GZIP = 0x2000000 , FrameCPP::Compression::MODE_ZERO_SUPPRESS_2_4_8_OTHERWISE_GZIP = 0x3000000 , FrameCPP::Compression::MODE_BEST_COMPRESSION = 0x4000000 ,
  FrameCPP::Compression::MODE_RAW = 0 , FrameCPP::Compression::MODE_GZIP = 0x10000 , FrameCPP::Compression::MODE_DIFF = 0x20000 , FrameCPP::Compression::MODE_DIFF_GZIP = 0x30000 ,
  FrameCPP::Compression::MODE_ZERO_SUPPRESS_SHORT = 0x40000 , FrameCPP::Compression::MODE_ZERO_SUPPRESS_INT_FLOAT = 0x50000 , FrameCPP::Compression::MODE_ZERO_SUPPRESS_WORD_4 = 0x60000 , FrameCPP::Compression::MODE_ZERO_SUPPRESS_WORD_8 = 0x70000 ,
  FrameCPP::Compression::MODE_ZERO_SUPPRESS_2_OTHERWISE_GZIP = 0x1000000 , FrameCPP::Compression::MODE_ZERO_SUPPRESS_2_4_OTHERWISE_GZIP = 0x2000000 , FrameCPP::Compression::MODE_ZERO_SUPPRESS_2_4_8_OTHERWISE_GZIP = 0x3000000 , FrameCPP::Compression::MODE_BEST_COMPRESSION = 0x4000000
}
 Enumerated type for general compression modes. More...
 

Functions

void FrameCPP::Compression::Compress (INT_4U &CompressionMode, INT_4U Level, const compress_type_mapping &CompressionMapping, const compress_type_reverse_mapping &CompressionReverseMapping, INT_4U DataType, const data_type_mapping &DataTypeMapping, const CHAR_U *Source, const INT_8U SourceLength, const INT_8U SourceByteLength, output_type &Dest, INT_8U &DestByteLength)
 compress data without altering the source More...
 
void FrameCPP::Compression::Expand (const bool NativeOrder, const INT_4U CompressionMode, const compress_type_mapping &CompressionMapping, const INT_4U DataType, const data_type_mapping &DataTypeMapping, const CHAR_U *Source, const INT_8U SourceLength, const INT_8U SourceByteLength, output_type &Dest, INT_8U &DataByteLength)
 uncompress data without altering the source More...
 

Variables

 HASH_NAMESPACE_BEGIN
 

Variable Documentation

◆ HASH_NAMESPACE_BEGIN

HASH_NAMESPACE_BEGIN
Initial value:
{
template <>
{
inline size_t
operator( )( const FrameCPP::Compression::compress_type Key ) const
{
return ( Key >> 16 );
}
}
compress_type
Enumerated type for general compression modes.
Definition: Compression.hh:80
I/O library for implementing the LIGO/Virgo frame specification.
Definition: Array.hh:39