![]() |
IPSDK
4_1_0_2
IPSDK : Image Processing Software Development Kit
|
Class used to select a processing function given data types informations. More...
#include <AlgorithmFunctionSelector.h>
Public Types | |
| typedef AlgorithmFunctionIdentifier | FunctionId |
| algorithm function identifier type used by processing algorithm | |
| typedef DataTypeIdentifierColl | DataTypeIdColl |
| data type identifier collection used by processing algorithm | |
| typedef BaseProcessingAlgorithm::FunctionType | FunctionType |
| function type used by processing algorithm | |
Public Member Functions | |
| bool | existsFunction (const FunctionId &functionId) const |
| check whether a processing function has already been registred More... | |
| BoolResult | registerFunction (const FunctionId &functionId) |
| add a new function to collection More... | |
| bool | isAvailableFunction (const DataTypeIdColl &dataTypeIdColl, const InstructionSetsIdentifier &instructionSetsId=InstructionSetsIdentifier(), const ipUInt64 nbDataByElement=-1, const ipUInt64 nbInitData=0, const ipUInt64 nbFinalData=0) const |
| check whether a function is available for processing on local computer given processing data types, an optional instruction set collection and an optional number of data by element to process More... | |
| const FunctionId & | retrieveFunctionIdentifier (const DataTypeIdColl &dataTypeIdColl, const InstructionSetsIdentifier &instructionSetsId=InstructionSetsIdentifier(), const ipUInt64 nbDataByElement=-1, const ipUInt64 nbInitData=0, const ipUInt64 nbFinalData=0) const |
| retrieve processing function on local computer associated to given processing data types and an optional instruction set collection More... | |
| void | clear () |
| clear object data | |
Constructors and destructors | |
| AlgorithmFunctionSelector () | |
| ~AlgorithmFunctionSelector () | |
Public Member Functions inherited from ipsdk::BaseDynamicObject | |
| virtual const std::string & | getClassName () const |
| method allowing to retrieve object class name | |
| virtual BaseDynamicObject * | createNew () const =0 |
| method allowing to create new instance of current object type | |
| virtual DynamicObjectPtr | createShared () const =0 |
| method allowing to create new shared instance of current object type | |
| virtual bool | hasCopySupport () const =0 |
| check whether objet has copy support | |
| virtual BaseDynamicObject * | duplicate () const =0 |
| method allowing to duplicate current object More... | |
| virtual DynamicObjectPtr | duplicateShared () const =0 |
| method allowing shared duplication of current object More... | |
| BaseDynamicObject () | |
| virtual | ~BaseDynamicObject ()=0 |
Static Public Member Functions | |
| static bool | isSupported (const InstructionSetsIdentifier &instructionSetsId) |
| check whether a given instruction set collection is supported by hardware | |
| static bool | isEnabled (const InstructionSetsIdentifier &instructionSetsId) |
| check whether a given instruction set collection is enable | |
Static Public Member Functions inherited from ipsdk::BaseDynamicObject | |
| static const std::string & | getTypeName () |
| method allowing to retrieve name associated to class | |
Protected Types | |
| typedef std::multimap< ipUInt64, FunctionId > | FunctionEfficiencyColl |
| function identifiers sorted by efficiency | |
| typedef std::map< DataTypeIdColl, FunctionEfficiencyColl > | FunctionsColl |
| function identifiers sorted by data types | |
Protected Attributes | |
| FunctionsColl | _functionsColl |
| collection of function identifiers sorted by processing data types | |
Additional Inherited Members | |
Protected Member Functions inherited from ipsdk::BaseDynamicObject | |
| virtual void | initCtorCopy (const BaseDynamicObject &object) |
| virtual void | copy (const BaseDynamicObject &object) |
| method allowing to copy data from another object | |
Class used to select a processing function given data types informations.
| bool ipsdk::processor::AlgorithmFunctionSelector::existsFunction | ( | const FunctionId & | functionId | ) | const |
check whether a processing function has already been registred
| ipsdk::processor::IPSDKBaseProcessingException | if functionId.isInit() == false |
| ipsdk::processor::IPSDKBaseProcessingException | if underlying data type identifier types mismatch |
| BoolResult ipsdk::processor::AlgorithmFunctionSelector::registerFunction | ( | const FunctionId & | functionId | ) |
add a new function to collection
| ipsdk::processor::IPSDKBaseProcessingException | if existsFunction(functionId) == true |
| bool ipsdk::processor::AlgorithmFunctionSelector::isAvailableFunction | ( | const DataTypeIdColl & | dataTypeIdColl, |
| const InstructionSetsIdentifier & | instructionSetsId = InstructionSetsIdentifier(), |
||
| const ipUInt64 | nbDataByElement = -1, |
||
| const ipUInt64 | nbInitData = 0, |
||
| const ipUInt64 | nbFinalData = 0 |
||
| ) | const |
check whether a function is available for processing on local computer given processing data types, an optional instruction set collection and an optional number of data by element to process
| ipsdk::processor::IPSDKBaseProcessingException | if dataTypeIdColl.isInit() == false |
| ipsdk::processor::IPSDKBaseProcessingException | if underlying data type identifier types mismatch |
| ipsdk::processor::IPSDKBaseProcessingException | if instructionSetsId.isInit() == false |
| const FunctionId& ipsdk::processor::AlgorithmFunctionSelector::retrieveFunctionIdentifier | ( | const DataTypeIdColl & | dataTypeIdColl, |
| const InstructionSetsIdentifier & | instructionSetsId = InstructionSetsIdentifier(), |
||
| const ipUInt64 | nbDataByElement = -1, |
||
| const ipUInt64 | nbInitData = 0, |
||
| const ipUInt64 | nbFinalData = 0 |
||
| ) | const |
retrieve processing function on local computer associated to given processing data types and an optional instruction set collection
| ipsdk::processor::IPSDKBaseProcessingException | if isAvailableFunction(dataTypeIdColl, instructionSetsId, nbDataToProcess, nbInitData, nbFinalData) == false |
1.8.14