Lunchbox  1.8.0
Public Member Functions | List of all members
lunchbox::Plugin Class Reference

Holder for all functions and information of one compression plugin DSO. More...

#include <plugin.h>

+ Inheritance diagram for lunchbox::Plugin:
+ Collaboration diagram for lunchbox::Plugin:

Public Types

Plugin function prototypes.
typedef size_t(* GetNumCompressors_t )()
typedef void *(* NewCompressor_t )(const unsigned)
typedef void(* DeleteCompressor_t )(void *const )
typedef void *(* NewDecompressor_t )(const unsigned)
typedef void(* DeleteDecompressor_t )(void *const )
typedef void(* Compress_t )(void *const, const unsigned, void *const, const uint64_t *, const uint64_t)
typedef unsigned(* GetNumResults_t )(void *const, const unsigned)
typedef void(* GetResult_t )(void *const, const unsigned, const unsigned, void **const, uint64_t *const )
typedef void(* Decompress_t )(void *const, const unsigned, const void *const *, const uint64_t *const, const unsigned, void *const, uint64_t *const, const uint64_t)
typedef bool(* IsCompatible_t )(const unsigned, const GLEWContext *)
typedef void(* Download_t )(void *const, const unsigned, const GLEWContext *, const uint64_t *, const unsigned, const uint64_t, uint64_t *, void **)
typedef void(* StartDownload_t )(void *const, const unsigned, const GLEWContext *, const uint64_t *, const unsigned, const uint64_t)
typedef void(* FinishDownload_t )(void *const, const unsigned, const GLEWContext *, const uint64_t *, const uint64_t, uint64_t *, void **)
typedef void(* Upload_t )(void *const, const unsigned, const GLEWContext *, const void *, const uint64_t *, const uint64_t, const uint64_t *, const unsigned)

Public Member Functions

 Plugin (const std::string &libraryName)
 Construct and initialize a new plugin DSO.
virtual ~Plugin ()
 Destruct this plugin handle.
Data Access.
bool isGood () const
VisitorResult accept (PluginVisitor &visitor)
 Visit all compressors.
VisitorResult accept (ConstPluginVisitor &visitor) const
 Visit all compressors.
bool implementsType (const uint32_t name) const
EqCompressorInfo findInfo (const uint32_t name) const
const CompressorInfos & getInfos () const
- Public Member Functions inherited from lunchbox::DSO
 DSO ()
 Construct a new dynamic shared object.
 DSO (const std::string &name)
 Construct and initialize a dynamic shared object.
 ~DSO ()
 Destruct this DSO handle.
bool open (const std::string &fileName)
 Open a dynamic shared object.
void close ()
 Close the DSO, invalidates retrieved function pointers.
void * getFunctionPointer (const std::string &functionName)
template<class F >
getFunctionPointer (const std::string &func)
bool isOpen () const

Public Attributes

Plugin function pointers.
GetNumCompressors_t const getNumCompressors
 Get the number of engines found in the plugin.
NewCompressor_t const newCompressor
 Get a new compressor instance.
NewDecompressor_t const newDecompressor
 Get a new decompressor instance.
DeleteCompressor_t const deleteCompressor
 Delete the compressor instance.
DeleteDecompressor_t const deleteDecompressor
 Delete the decompressor instance.
Compress_t const compress
 Compress data.
Decompress_t const decompress
 Decompress data.
GetNumResults_t const getNumResults
 Get the number of results from the last compression.
GetResult_t const getResult
 Get the nth result from the last compression.
IsCompatible_t const isCompatible
 Check if the transfer plugin can be used.
Download_t const download
 Download pixel data.
Upload_t const upload
 Upload pixel data.
StartDownload_t const startDownload
 Start downloading pixel data.
FinishDownload_t const finishDownload
 Start downloading pixel data.

Detailed Description

Holder for all functions and information of one compression plugin DSO.

Definition at line 34 of file plugin.h.

Constructor & Destructor Documentation

lunchbox::Plugin::Plugin ( const std::string &  libraryName)

Construct and initialize a new plugin DSO.

Version
1.7.1
virtual lunchbox::Plugin::~Plugin ( )
virtual

Destruct this plugin handle.

Version
1.7.1

Member Function Documentation

VisitorResult lunchbox::Plugin::accept ( PluginVisitor visitor)

Visit all compressors.

Version
1.7.1
VisitorResult lunchbox::Plugin::accept ( ConstPluginVisitor visitor) const

Visit all compressors.

Version
1.7.1
bool lunchbox::Plugin::isGood ( ) const
Returns
true if the plugin is usable.
Version
1.7.1

Member Data Documentation

Compress_t const lunchbox::Plugin::compress

Compress data.

Version
1.7.1

Definition at line 120 of file plugin.h.

Decompress_t const lunchbox::Plugin::decompress

Decompress data.

Version
1.7.1

Definition at line 123 of file plugin.h.

DeleteCompressor_t const lunchbox::Plugin::deleteCompressor

Delete the compressor instance.

Version
1.7.1

Definition at line 114 of file plugin.h.

DeleteDecompressor_t const lunchbox::Plugin::deleteDecompressor

Delete the decompressor instance.

Version
1.7.1

Definition at line 117 of file plugin.h.

Download_t const lunchbox::Plugin::download

Download pixel data.

Version
1.7.1

Definition at line 135 of file plugin.h.

FinishDownload_t const lunchbox::Plugin::finishDownload

Start downloading pixel data.

Version
1.7.1

Definition at line 144 of file plugin.h.

GetNumCompressors_t const lunchbox::Plugin::getNumCompressors

Get the number of engines found in the plugin.

Version
1.7.1

Definition at line 105 of file plugin.h.

GetNumResults_t const lunchbox::Plugin::getNumResults

Get the number of results from the last compression.

Version
1.7.1

Definition at line 126 of file plugin.h.

GetResult_t const lunchbox::Plugin::getResult

Get the nth result from the last compression.

Version
1.7.1

Definition at line 129 of file plugin.h.

IsCompatible_t const lunchbox::Plugin::isCompatible

Check if the transfer plugin can be used.

Version
1.7.1

Definition at line 132 of file plugin.h.

NewCompressor_t const lunchbox::Plugin::newCompressor

Get a new compressor instance.

Version
1.7.1

Definition at line 108 of file plugin.h.

NewDecompressor_t const lunchbox::Plugin::newDecompressor

Get a new decompressor instance.

Version
1.7.1

Definition at line 111 of file plugin.h.

StartDownload_t const lunchbox::Plugin::startDownload

Start downloading pixel data.

Version
1.7.1

Definition at line 141 of file plugin.h.

Upload_t const lunchbox::Plugin::upload

Upload pixel data.

Version
1.7.1

Definition at line 138 of file plugin.h.


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