ldas-tools-framecpp  2.5.8
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Classes | Namespaces | Typedefs | Enumerations | Functions
Compression.hh File Reference
#include <limits>
#include <iostream>
#include <sstream>
#include <stdexcept>
#include "ldastoolsal/types.hh"
#include "ldastoolsal/autoarray.hh"
#include "ldastoolsal/unordered_map.hh"
#include "framecpp/Common/CompressionException.hh"

Classes

struct  hash< FrameCPP::Compression::compress_type >
 

Namespaces

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

Typedefs

typedef INT_2U FrameCPP::Compression::compression_base_type
 
typedef
LDASTools::AL::unordered_map
< INT_4U, data_types_type > 
FrameCPP::Compression::data_type_mapping
 
typedef
LDASTools::AL::unordered_map
< INT_4U, compress_type > 
FrameCPP::Compression::compress_type_mapping
 
typedef
LDASTools::AL::unordered_map
< compress_type, INT_4U > 
FrameCPP::Compression::compress_type_reverse_mapping
 

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
}
 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
}
 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, CHAR_U *&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, CHAR_U *&Dest, INT_8U &DataByteLength)
 uncompress data without altering the source More...