Image Component Library (ICL)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
icl::utils::IppInterface Class Reference

#include <IppInterface.h>

Inheritance diagram for icl::utils::IppInterface:
icl::utils::Uncopyable

List of all members.

Public Member Functions

const char * ippGetStatusString (icl32s StsCode)
 the passed StsCode needs to be an ipp status code, otherwise the behaviour is not defined
icl32s ippmEigenValuesVectorsSym_m_32f (const icl32f *pSrc, icl32s srcStride1, icl32s srcStride2, icl32f *pBuffer, icl32f *pDstVectors, icl32s dstStride1, icl32s dstStride2, icl32f *pDstValues, icl32s widthHeight)
icl32s ippmEigenValuesVectorsSym_m_64f (const icl64f *pSrc, icl32s srcStride1, icl32s srcStride2, icl64f *pBuffer, icl64f *pDstVectors, icl32s dstStride1, icl32s dstStride2, icl64f *pDstValues, icl32s widthHeight)
icl32s ippmInvert_m_32f (const icl32f *pSrc, icl32s srcStride1, icl32s srcStride2, icl32f *pBuffer, icl32f *pDst, icl32s dstStride1, icl32s dstStride2, icl32s widthHeight)
icl32s ippmInvert_m_64f (const icl64f *pSrc, icl32s srcStride1, icl32s srcStride2, icl64f *pBuffer, icl64f *pDst, icl32s dstStride1, icl32s dstStride2, icl32s widthHeight)
icl32s ippmDet_m_32f (const icl32f *pSrc, icl32s srcStride1, icl32s srcStride2, icl32s widthHeight, icl32f *pBuffer, icl32f *pDst)
icl32s ippmDet_m_64f (const icl64f *pSrc, icl32s srcStride1, icl32s srcStride2, icl32s widthHeight, icl64f *pBuffer, icl64f *pDst)
void * ippSymbolPointer (std::string symbol_name, std::string lib_name="")
 a getter for the address of an ipp symbol determined by given name

Static Public Member Functions

static IppInterfaceget ()
 getter function for singleton class
static icl32s statusNoError ()
 returns the no error status value of ipp as icl32s

Private Member Functions

 IppInterface ()
 private constructor to ensure singleton
 ~IppInterface ()

Private Attributes

std::map< std::string, void * > m_LibHandles
 A map holding handles to all dynamically loaded libs.
Mutex m_FunctionHandleMutex
 A mutex for the function handle map.
std::map< std::string, void * > m_FunctionHandles
 A map holding handles to all dynamically loaded functions.

Constructor & Destructor Documentation

private constructor to ensure singleton


Member Function Documentation

getter function for singleton class

the passed StsCode needs to be an ipp status code, otherwise the behaviour is not defined

icl32s icl::utils::IppInterface::ippmDet_m_32f ( const icl32f pSrc,
icl32s  srcStride1,
icl32s  srcStride2,
icl32s  widthHeight,
icl32f pBuffer,
icl32f pDst 
)
icl32s icl::utils::IppInterface::ippmDet_m_64f ( const icl64f pSrc,
icl32s  srcStride1,
icl32s  srcStride2,
icl32s  widthHeight,
icl64f pBuffer,
icl64f pDst 
)
icl32s icl::utils::IppInterface::ippmEigenValuesVectorsSym_m_32f ( const icl32f pSrc,
icl32s  srcStride1,
icl32s  srcStride2,
icl32f pBuffer,
icl32f pDstVectors,
icl32s  dstStride1,
icl32s  dstStride2,
icl32f pDstValues,
icl32s  widthHeight 
)
icl32s icl::utils::IppInterface::ippmEigenValuesVectorsSym_m_64f ( const icl64f pSrc,
icl32s  srcStride1,
icl32s  srcStride2,
icl64f pBuffer,
icl64f pDstVectors,
icl32s  dstStride1,
icl32s  dstStride2,
icl64f pDstValues,
icl32s  widthHeight 
)
icl32s icl::utils::IppInterface::ippmInvert_m_32f ( const icl32f pSrc,
icl32s  srcStride1,
icl32s  srcStride2,
icl32f pBuffer,
icl32f pDst,
icl32s  dstStride1,
icl32s  dstStride2,
icl32s  widthHeight 
)
icl32s icl::utils::IppInterface::ippmInvert_m_64f ( const icl64f pSrc,
icl32s  srcStride1,
icl32s  srcStride2,
icl64f pBuffer,
icl64f pDst,
icl32s  dstStride1,
icl32s  dstStride2,
icl32s  widthHeight 
)
void* icl::utils::IppInterface::ippSymbolPointer ( std::string  symbol_name,
std::string  lib_name = "" 
)

a getter for the address of an ipp symbol determined by given name

This function searches for the address of a symbol and returns a void pointer to it. When a symbol cant be found this function will thow an exception. The symbol addresses, once searched for, will be saved in a map for faster recall.

Parameters:
symbol_nameThe name of the symbol (e.g. function name ippmDet_m_32f)
lib_namethe name of the shared library (e.g. libippm.so) when the string is empty the symbol is searched in all (in IppInterface) loaded libs and the first found symbol is returned
Returns:
the address of the symbol (e.g a function pointer)

returns the no error status value of ipp as icl32s


Member Data Documentation

A mutex for the function handle map.

std::map<std::string,void*> icl::utils::IppInterface::m_FunctionHandles [private]

A map holding handles to all dynamically loaded functions.

std::map<std::string,void*> icl::utils::IppInterface::m_LibHandles [private]

A map holding handles to all dynamically loaded libs.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines