NIST Biometric Evaluation Framework
Software components for biometric technology evaluations
Public Types | Public Member Functions | Static Public Member Functions | List of all members
BiometricEvaluation::IO::Compressor Class Referenceabstract

Common interface for classes providing compressing and decompressing functionality. More...

#include <be_io_compressor.h>

Inherited by BiometricEvaluation::IO::GZip.

Public Types

enum class  Kind { GZIP }
 Kinds of Compressors (for factory) More...
 

Public Member Functions

 Compressor ()
 Create a new Compressor object. More...
 
virtual Memory::uint8Array compress (const uint8_t *const uncompressedData, uint64_t uncompressedDataSize) const =0
 Compress a buffer. More...
 
virtual Memory::uint8Array compress (const Memory::uint8Array &uncompressedData) const =0
 Compress a buffer. More...
 
virtual void compress (const uint8_t *const uncompressedData, uint64_t uncompressedDataSize, const std::string &outputFile) const =0
 Compress a buffer. More...
 
virtual void compress (const Memory::uint8Array &uncompressedData, const std::string &outputFile) const =0
 Compress a buffer. More...
 
virtual Memory::uint8Array compress (const std::string &inputFile) const =0
 Compress a file. More...
 
virtual void compress (const std::string &inputFile, const std::string &outputFile) const =0
 Compress a file. More...
 
virtual Memory::uint8Array decompress (const uint8_t *const compressedData, uint64_t compressedDataSize) const =0
 Decompress a compressed buffer. More...
 
virtual Memory::uint8Array decompress (const Memory::uint8Array &compressedData) const =0
 Decompress a compressed buffer. More...
 
virtual Memory::uint8Array decompress (const std::string &inputFile) const =0
 Decompress a compressed buffer into a file. More...
 
virtual void decompress (const Memory::uint8Array &compressedData, const std::string &outputFile) const =0
 Decompress a file. More...
 
virtual void decompress (const uint8_t *const compressedData, const uint64_t compressedDataSize, const std::string &outputFile) const =0
 Decompress a file. More...
 
virtual void decompress (const std::string &inputFile, const std::string &outputFile) const =0
 Decompress a file. More...
 
void setOption (const std::string &optionName, const std::string &optionValue)
 Assign a compressor option. More...
 
void setOption (const std::string &optionName, int64_t optionValue)
 Assign a compressor option. More...
 
std::string getOption (const std::string &optionName) const
 Obtain a compressor option as an integer. More...
 
int64_t getOptionAsInteger (const std::string &optionName) const
 Obtain a compressor option as an integer. More...
 
void removeOption (const std::string &optionName)
 Remove a compressor option. More...
 
virtual ~Compressor ()
 Destructor. More...
 
 Compressor (const Compressor &other)=delete
 Copy constructor (disabled). More...
 
Compressoroperator= (const Compressor &other)=delete
 Assignment overload (disabled). More...
 

Static Public Member Functions

static std::shared_ptr< CompressorcreateCompressor (Compressor::Kind compressorKind=Kind::GZIP)
 Compressor factory. More...
 

Detailed Description

Common interface for classes providing compressing and decompressing functionality.

Definition at line 32 of file be_io_compressor.h.

Member Enumeration Documentation

◆ Kind

Kinds of Compressors (for factory)

Enumerator
GZIP 

Definition at line 36 of file be_io_compressor.h.

Constructor & Destructor Documentation

◆ Compressor() [1/2]

BiometricEvaluation::IO::Compressor::Compressor ( )

Create a new Compressor object.

Default compression options will be used.

◆ ~Compressor()

virtual BiometricEvaluation::IO::Compressor::~Compressor ( )
virtual

Destructor.

◆ Compressor() [2/2]

BiometricEvaluation::IO::Compressor::Compressor ( const Compressor other)
delete

Copy constructor (disabled).

Disabled because Properties member cannot be copied.

Parameters
otherCompressor to copy.

Member Function Documentation

◆ compress() [1/6]

virtual Memory::uint8Array BiometricEvaluation::IO::Compressor::compress ( const uint8_t *const  uncompressedData,
uint64_t  uncompressedDataSize 
) const
pure virtual

Compress a buffer.

Parameters
uncompressedDataUncompressed data buffer to compress.
uncompressedDataSizeSize of uncompressedData.
Returns
Compressed buffer.
Exceptions
Error::StrategyErrorError in compression unit.

Implemented in BiometricEvaluation::IO::GZip.

◆ compress() [2/6]

virtual Memory::uint8Array BiometricEvaluation::IO::Compressor::compress ( const Memory::uint8Array uncompressedData) const
pure virtual

Compress a buffer.

Parameters
uncompressedDataUncompressed data buffer to compress.
Returns
Compressed buffer.
Exceptions
Error::StrategyErrorError in decompression unit.

Implemented in BiometricEvaluation::IO::GZip.

◆ compress() [3/6]

virtual void BiometricEvaluation::IO::Compressor::compress ( const uint8_t *const  uncompressedData,
uint64_t  uncompressedDataSize,
const std::string &  outputFile 
) const
pure virtual

Compress a buffer.

Parameters
uncompressedDataUncompressed data buffer to compress.
uncompressedDataSizeSize of uncompressedData.
outputFileLocation to save compressed file.
Exceptions
Error::ObjectExistsOutput file already exists.
Error::StrategyErrorError in compression unit.

Implemented in BiometricEvaluation::IO::GZip.

◆ compress() [4/6]

virtual void BiometricEvaluation::IO::Compressor::compress ( const Memory::uint8Array uncompressedData,
const std::string &  outputFile 
) const
pure virtual

Compress a buffer.

Parameters
uncompressedDataUncompressed data buffer to compress.
outputFileLocation to save compressed file.
Exceptions
Error::ObjectExistsOutput file already exists.
Error::StrategyErrorError in decompression unit.

Implemented in BiometricEvaluation::IO::GZip.

◆ compress() [5/6]

virtual Memory::uint8Array BiometricEvaluation::IO::Compressor::compress ( const std::string &  inputFile) const
pure virtual

Compress a file.

Parameters
inputFilePath to file to compress.
Returns
Compressed buffer.
Exceptions
Error::ObjectDoesNotExistInput file does not exist.
Error::StrategyErrorError in decompression unit.

Implemented in BiometricEvaluation::IO::GZip.

◆ compress() [6/6]

virtual void BiometricEvaluation::IO::Compressor::compress ( const std::string &  inputFile,
const std::string &  outputFile 
) const
pure virtual

Compress a file.

Parameters
inputFilePath to file to compress.
outputFilePath to location where compressed version will be saved.
Exceptions
Error::ObjectDoesNotExistInput file does not exist.
Error::ObjectExistsOutput file already exists.
Error::StrategyErrorError in decompression unit.

Implemented in BiometricEvaluation::IO::GZip.

◆ decompress() [1/6]

virtual Memory::uint8Array BiometricEvaluation::IO::Compressor::decompress ( const uint8_t *const  compressedData,
uint64_t  compressedDataSize 
) const
pure virtual

Decompress a compressed buffer.

Parameters
compressedDataCompressed data buffer to decompress.
compressedDataSizeSize of compressedData.
Returns
Decompressed data.
Exceptions
Error::StrategyErrorError in compression unit.

Implemented in BiometricEvaluation::IO::GZip.

◆ decompress() [2/6]

virtual Memory::uint8Array BiometricEvaluation::IO::Compressor::decompress ( const Memory::uint8Array compressedData) const
pure virtual

Decompress a compressed buffer.

Parameters
compressedDataCompressed data buffer to decompress.
Returns
Decompressed data.
Exceptions
Error::StrategyErrorError in decompression unit.

Implemented in BiometricEvaluation::IO::GZip.

◆ decompress() [3/6]

virtual Memory::uint8Array BiometricEvaluation::IO::Compressor::decompress ( const std::string &  inputFile) const
pure virtual

Decompress a compressed buffer into a file.

Parameters
inputFileLocation to save compressed file.
Returns
Decompressed data.
Exceptions
Error::StrategyErrorError in decompression unit.
Error::ObjectDoesNotExistsOutput file already exists.

Implemented in BiometricEvaluation::IO::GZip.

◆ decompress() [4/6]

virtual void BiometricEvaluation::IO::Compressor::decompress ( const Memory::uint8Array compressedData,
const std::string &  outputFile 
) const
pure virtual

Decompress a file.

Parameters
compressedDataCompressed data buffer to decompress.
outputFilePath to location where decompressed version will be saved.
Exceptions
Error::ObjectExistsOutput file already exists.
Error::StrategyErrorError in compression unit.

Implemented in BiometricEvaluation::IO::GZip.

◆ decompress() [5/6]

virtual void BiometricEvaluation::IO::Compressor::decompress ( const uint8_t *const  compressedData,
const uint64_t  compressedDataSize,
const std::string &  outputFile 
) const
pure virtual

Decompress a file.

Parameters
compressedDataCompressed data buffer to decompress.
compressedDataSizeSize of compressedData.
outputFilePath to location where decompressed version will be saved.
Exceptions
Error::ObjectExistsOutput file already exists.
Error::StrategyErrorError in compression unit.

Implemented in BiometricEvaluation::IO::GZip.

◆ decompress() [6/6]

virtual void BiometricEvaluation::IO::Compressor::decompress ( const std::string &  inputFile,
const std::string &  outputFile 
) const
pure virtual

Decompress a file.

Parameters
inputFilePath to file to decompress.
outputFilePath to location where decompressed version will be saved.
Exceptions
Error::ObjectDoesNotExistInput file does not exist.
Error::ObjectExistsOutput file already exists.
Error::StrategyErrorError in compression unit.

Implemented in BiometricEvaluation::IO::GZip.

◆ setOption() [1/2]

void BiometricEvaluation::IO::Compressor::setOption ( const std::string &  optionName,
const std::string &  optionValue 
)

Assign a compressor option.

Will overwrite existing values without warning.

Parameters
optionNameName of the option to add.
optionValueValue of the option.
Exceptions
Error::StrategyErrorError setting option.

◆ setOption() [2/2]

void BiometricEvaluation::IO::Compressor::setOption ( const std::string &  optionName,
int64_t  optionValue 
)

Assign a compressor option.

Will overwrite existing values without warning.

Parameters
optionNameName of the option to add.
optionValueValue of the option.
Exceptions
Error::StrategyErrorError setting option.

◆ getOption()

std::string BiometricEvaluation::IO::Compressor::getOption ( const std::string &  optionName) const

Obtain a compressor option as an integer.

Parameters
optionNameName of the option to obtain.
Returns
Value of compressor option.

◆ getOptionAsInteger()

int64_t BiometricEvaluation::IO::Compressor::getOptionAsInteger ( const std::string &  optionName) const

Obtain a compressor option as an integer.

Parameters
optionNameName of the option to obtain.
Returns
Value of compressor option.
Exceptions
Error::ObjectDoesNotExistThe option was never set.

◆ removeOption()

void BiometricEvaluation::IO::Compressor::removeOption ( const std::string &  optionName)

Remove a compressor option.

Parameters
optionNameName of the option to remove.

◆ createCompressor()

static std::shared_ptr< Compressor > BiometricEvaluation::IO::Compressor::createCompressor ( Compressor::Kind  compressorKind = Kind::GZIP)
static

Compressor factory.

Parameters
compressorKindA known kind of compressor.
Returns
A new compressor with default options.
Exceptions
Error::ObjectDoesNotExistInvalid compressor type.

◆ operator=()

Compressor & BiometricEvaluation::IO::Compressor::operator= ( const Compressor other)
delete

Assignment overload (disabled).

Disabled because Properties member cannot be assigned.

Parameters
otherCompressor to assign.
Returns
lhs Compressor.

The documentation for this class was generated from the following file: