![]() |
ICF 3.0.5.47
Technical documentation of ICF Libraries
|
Interface for all synchrone and asynchrone processors with "push data" model. More...
#include <IProcessor.h>
Public Types | |
enum | MessageId { MI_BAD_PARAMS = 0x16372620 , MI_PROCESSING_ERROR } |
enum | ProcessorState { PS_UNKNOWN , PS_INITIALIZATION , PS_READY , PS_INVALID } |
State of processing. More... | |
Public Member Functions | |
virtual int | GetProcessorState (const iprm::IParamsSet *paramsPtr) const =0 |
Get state of this processor for processing of specified parameters. | |
virtual bool | AreParamsAccepted (const iprm::IParamsSet *paramsPtr, const istd::IPolymorphic *inputPtr, const istd::IChangeable *outputPtr) const =0 |
Check if specified parameter set is accepted for this processor. | |
virtual void | InitProcessor (const iprm::IParamsSet *paramsPtr, bool doReset)=0 |
Init processor and give him all or part of parameters. | |
virtual CTaskState | DoProcessing (const iprm::IParamsSet *paramsPtr, const istd::IPolymorphic *inputPtr, istd::IChangeable *outputPtr, bool allowAsync=true, iproc::IProgressManager *progressManagerPtr=nullptr)=0 |
Do synchronized processing. | |
Interface for all synchrone and asynchrone processors with "push data" model.
Each task has its input object, output object and parameter set.
Definition at line 25 of file IProcessor.h.
Enumerator | |
---|---|
MI_BAD_PARAMS | Bad processor parameter. |
MI_PROCESSING_ERROR |
Definition at line 28 of file IProcessor.h.
State of processing.
Definition at line 40 of file IProcessor.h.
|
pure virtual |
Check if specified parameter set is accepted for this processor.
paramsPtr | pointer to parameter object or nullptr if general state is mean. |
inputPtr | optional input object typically being source object used to processing. |
outputPtr | optional output object storing processing result. |
Implemented in icam::CCameraDelegatorComp, icam::CCameraMultiplexerComp, icam::CSelectionParamCameraComp, icamgui::CFileAcquisitionComp, iproc::TSyncProcessorWrap< icam::IBitmapAcquisition >, and iproc::TSyncProcessorWrap< iipr::IImageToFeatureProcessor >.
|
pure virtual |
Do synchronized processing.
paramsPtr | pointer to parameter object. Pointed object can be used till task is finished. It can be nullptr . |
inputPtr | optional input object typically being source object used to processing. Pointed object can be used till task is finished. It can be nullptr . |
outputPtr | optional output object storing processing result. Pointed object can be used till task is finished. It can be nullptr , but typically it means that there is nothing to do. |
allowAsync | If true, than asynchronously implementation is preferred and allowed. |
Implemented in icam::CCameraDelegatorComp, icam::CCameraMultiplexerComp, icam::CMultiCameraJoinerComp, icam::CProcessedCameraComp, icam::CSelectionParamCameraComp, icamgui::CFileAcquisitionComp, iipr::CBlobProcessorCompBase, and iipr::CCheckerboardPointGridExtractorComp.
|
pure virtual |
Get state of this processor for processing of specified parameters.
paramsPtr | pointer to parameter object or nullptr if general state is mean. |
Implemented in icam::CCameraDelegatorComp, icam::CCameraMultiplexerComp, icam::CSelectionParamCameraComp, icamgui::CFileAcquisitionComp, iproc::TSyncProcessorWrap< icam::IBitmapAcquisition >, and iproc::TSyncProcessorWrap< iipr::IImageToFeatureProcessor >.
|
pure virtual |
Init processor and give him all or part of parameters.
Please note, that initalizing will be also done automatically in method DoProcessing
but it is recommended to use this method to avoid unpredictable waiting time during time critical processing.
paramsPtr | set of parameters controlling processing task. It can be nullptr . |
doReset | true, if state of processor should be resetted before the initialization. |
Implemented in icam::CCameraDelegatorComp, icam::CCameraMultiplexerComp, icam::CMultiCameraJoinerComp, icam::CProcessedCameraComp, icam::CSelectionParamCameraComp, icamgui::CFileAcquisitionComp, iproc::TSyncProcessorWrap< icam::IBitmapAcquisition >, and iproc::TSyncProcessorWrap< iipr::IImageToFeatureProcessor >.
© Witold Gantzke and Kirill Lepskiy