IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
ipsdk::imaproc::advmorpho::GreyReconstruction3dImgLvl3 Class Reference

Level 3 algorithm: grey reconstruction of an image 3d. More...

#include <GreyReconstruction3dImgLvl3.h>

Inheritance diagram for ipsdk::imaproc::advmorpho::GreyReconstruction3dImgLvl3:
ipsdk::processor::BaseProcessingAlgorithm ipsdk::processor::BaseSyncProcessor ipsdk::processor::BaseProcessor ipsdk::core::BaseComplexAction ipsdk::core::BaseAction ipsdk::SerializationObjectWithGuid ipsdk::BaseToolTip ipsdk::BaseSerializationObject ipsdk::BaseDynamicObject

Public Member Functions

 ~GreyReconstruction3dImgLvl3 ()
 destructor
 
const std::string & getObjectName () const
 method allowing to retrieve object name
 
const std::string & getToolTip () const
 method allowing to retrieve object tooltip
 
const boost::filesystem::path getHeaderPath () const
 retrieve relative header path associated to processor
 
const std::string getLibraryName () const
 retrieve library name associated processor
 
template<typename TAttribute >
TAttribute::StorageType getStorage ()
 retrieve storage associated to a given attribute More...
 
Attribute accessors

Setters and Getters for attributes

template<>
const ipsdk::imaproc::attr::InZStrip3dget () const
 Getter for attribute InZStrip3d.
 
template<>
void set (const typename ipsdk::imaproc::attr::InZStrip3d::StorageType &value)
 Setter for attribute InZStrip3d.
 
template<>
const ipsdk::imaproc::attr::InOptPreviousZStrip3dget () const
 Getter for attribute InOptPreviousZStrip3d.
 
template<>
void set (const typename ipsdk::imaproc::attr::InOptPreviousZStrip3d::StorageType &value)
 Setter for attribute InOptPreviousZStrip3d.
 
template<>
const ipsdk::imaproc::attr::InLocalExtremumTypeget () const
 Getter for attribute InLocalExtremumType.
 
template<>
void set (const typename ipsdk::imaproc::attr::InLocalExtremumType::StorageType &value)
 Setter for attribute InLocalExtremumType.
 
template<>
const ipsdk::imaproc::attr::OutNbModifiedPixelsget () const
 Getter for attribute OutNbModifiedPixels.
 
template<>
void set (const typename ipsdk::imaproc::attr::OutNbModifiedPixels::StorageType &value)
 Setter for attribute OutNbModifiedPixels.
 
template<>
const ipsdk::imaproc::attr::InOutZStrip3dget () const
 Getter for attribute InOutZStrip3d.
 
template<>
void set (const typename ipsdk::imaproc::attr::InOutZStrip3d::StorageType &value)
 Setter for attribute InOutZStrip3d.
 
- Public Member Functions inherited from ipsdk::processor::BaseSyncProcessor
eProcessorType getProcessorType () const
 
- Public Member Functions inherited from ipsdk::processor::BaseProcessor
BoolResult init (const eProcessorRulePolicy rulePolicy=eProcessorRulePolicy::ePRP_DisableSubRules)
 
const eProcessorRulePolicygetProcessorRulePolicy () const
 
std::string getFullInfoStr () const
 
const BaseRulegetGlobalRule () const
 
const ProcessorDispatchPolicygetDispatchPolicy () const
 
void restrictDispatchPolicy (const ProcessorDispatchPolicy &policy)
 
bool isProgressAvailable () const
 
ipsdk::processor::eProcessorProgressAvailability getProgressAvailability () const
 
ipsdk::ipUInt64 getTotalNbIterations () const
 
bool existsHeaderKey (const std::string &key) const
 
ItemNames getHeaderKeys () const
 
const BaseDataItemgetHeaderItem (const std::string &key) const
 
BaseDataItemgetHeaderItem (const std::string &key)
 
void addHeaderItem (const std::string &key, const DataItemPtr &pItem)
 
void removeHeaderItem (const std::string &key)
 
void clearHeader ()
 
ipUInt32 getNbAttributes () const
 
const BaseAttributegetAttribute (ipUInt32 index) const
 
BaseAttributegetAttribute (ipUInt32 index)
 
bool existsAttribute (const std::string &attributeName) const
 
StringVector getAttributeNameColl () const
 
const BaseAttributegetAttribute (const std::string &attributeName) const
 
BaseAttributegetAttribute (const std::string &attributeName)
 
bool hasOutputInitializer (const std::string &attributeName) const
 
const BaseOutputInitializergetOutputInitializer (const std::string &attributeName) const
 
bool existsHeaderKey (const std::string &key) const
 
ItemNames getHeaderKeys () const
 
const BaseDataItemgetHeaderItem (const std::string &key) const
 
BaseDataItemgetHeaderItem (const std::string &key)
 
void addHeaderItem (const std::string &key, const DataItemPtr &pItem)
 
void removeHeaderItem (const std::string &key)
 
void clearHeader ()
 
ipUInt32 getNbAttributes () const
 
const BaseAttributegetAttribute (ipUInt32 index) const
 
BaseAttributegetAttribute (ipUInt32 index)
 
bool existsAttribute (const std::string &attributeName) const
 
StringVector getAttributeNameColl () const
 
const BaseAttributegetAttribute (const std::string &attributeName) const
 
BaseAttributegetAttribute (const std::string &attributeName)
 
bool hasOutputInitializer (const std::string &attributeName) const
 
const BaseOutputInitializergetOutputInitializer (const std::string &attributeName) const
 
- Public Member Functions inherited from ipsdk::core::BaseComplexAction
bool isComplexAction () const
 
- Public Member Functions inherited from ipsdk::core::BaseAction
bool isInit () const
 
eExecutionStatus getStatus () const
 
const ePrioritygetActionPriority () const
 
void setActionPriority (const BasePriority &actionPriority)
 
void addCompletionCB (const ActionCompletionCB &completionCB)
 
ExecResult run (const eSynchroType &synchroType=eSynchroType::eST_Default)
 
void requestCancellation ()
 
bool isCancellationRequested () const
 
void waitForCompletion ()
 
ExecResult getActionResult () const
 
double getFullActionDuration () const
 
double getExecutionActionDuration () const
 
BoolResult clear ()
 
bool hasSocketGuid () const
 
void setSocketGuid (const Guid &socketGuid)
 
const GuidgetSocketGuid () const
 
bool hasSocketGuid () const
 
void setSocketGuid (const Guid &socketGuid)
 
const GuidgetSocketGuid () const
 
- Public Member Functions inherited from ipsdk::SerializationObjectWithGuid
const GuidgetGuid () const
 
- Public Member Functions inherited from ipsdk::BaseDynamicObject
virtual const std::string & getClassName () const
 
virtual BaseDynamicObjectcreateNew () const=0
 
virtual DynamicObjectPtr createShared () const=0
 
virtual bool hasCopySupport () const=0
 
virtual BaseDynamicObjectduplicate () const=0
 
virtual DynamicObjectPtr duplicateShared () const=0
 

Static Public Member Functions

static boost::shared_ptr< GreyReconstruction3dImgLvl3createProcessor ()
 processor creation function
 
static const std::string & getObjectNameStr ()
 method allowing to retrieve object name
 
static const std::string & getToolTipStr ()
 method allowing to retrieve object tooltip
 
static const boost::filesystem::path getHeaderPathStr ()
 retrieve relative header path associated to processor
 
static const std::string getLibraryNameStr ()
 retrieve library name associated processor
 
- Static Public Member Functions inherited from ipsdk::BaseSerializationObject
static ipUInt32 getVersion ()
 
- Static Public Member Functions inherited from ipsdk::BaseDynamicObject
static const std::string & getTypeName ()
 

Protected Member Functions

 GreyReconstruction3dImgLvl3 ()
 constructor
 
template<typename BufType , ipsdk::eInstructionSet::domain IS>
ipsdk::BoolResult genericProcessFunction (const ipsdk::processor::ProcessingInfo &info)
 generic processing function associated to class
 
template<typename BufType , typename Operator , ipsdk::eInstructionSet::domain IS>
void specificProcessFunction (const ipsdk::processor::ProcessingInfo &info)
 
template<typename BufType , typename Operator , ipsdk::eInstructionSet::domain IS>
void initPreviousData ()
 method allowing to initialize previous data
 
template<typename BufType , typename Operator , ipsdk::eInstructionSet::domain IS>
void updatePreviousRowData (const ipUInt64 curRowOffset)
 method allowing to update previous row data
 
template<typename BufType , typename Operator , ipsdk::eInstructionSet::domain IS>
void updatePreviousPlanData ()
 method allowing to update previous plan data
 
void clearIntermediateData ()
 method allowing to clear intermediate data for object
 
- Protected Member Functions inherited from ipsdk::processor::BaseProcessingAlgorithm
virtual const FunctionSelectorgetFunctionSelector () const=0
 
virtual const InstructionSetsIdentifiergetForcedInstructionSets () const=0
 
virtual void getDataTypeIdColl (DataTypeIdColl &dataTypeIdColl) const=0
 
virtual void initDataParserColl (DataParserColl &dataParserColl)=0
 
virtual void clearDataParserColl ()=0
 
virtual core::ExecResult preProcess ()
 
virtual core::ExecResult postProcess ()
 
virtual void getNoParseInfo (ipUInt64 &nbDataByElement, ipUInt64 &nbMaxInitData, ipUInt64 &nbMaxFinalData) const
 
- Protected Member Functions inherited from ipsdk::processor::BaseSyncProcessor
virtual core::ExecResult mainProcess ()=0
 
- Protected Member Functions inherited from ipsdk::processor::BaseProcessor
virtual BoolResult initDerived (AttributeColl &attributeColl, OutputInitializerColl &outputInitializerColl, ProcessorDispatchPolicy &dispatchPolicy, RulePtr &pGlobalRule, const eProcessorRulePolicy &rulePolicy)=0
 
- Protected Member Functions inherited from ipsdk::core::BaseComplexAction
virtual ExecResult initProcess ()
 
virtual ExecResult endProcess ()
 
ExecResult execInitProcess ()
 
ExecResult execEndProcess ()
 
- Protected Member Functions inherited from ipsdk::core::BaseAction
bool isSynchronismForced () const
 
BoolResult initBase (const BasePriority &defaultPriority=NormalPriority())
 
virtual BoolResult globalCleanDerived ()
 
virtual BoolResult cleanOnErrorDerived (const eCleanReason &cleanReason)
 
virtual ExecResultDerived runDerived ()=0
 
virtual void requestCancellationdDerived ()
 
void notifyCompletion (const ExecResult &bCompletionResult)
 
ExecResultDerived toExecResultDerived (const ExecResult &execResult) const
 
virtual BoolResult syncInputDataDerived (const Guid &processingSocketGuid)
 
virtual BoolResult syncOutputDataDerived (const Guid &processingSocketGuid)
 
virtual void clearInputData ()
 
virtual void clearOutputData ()
 
- Protected Member Functions inherited from ipsdk::BaseSerializationObject
virtual BoolResult write (BaseOArchive &ar) const
 
virtual BoolResult read (BaseIArchive &ar)
 
- Protected Member Functions inherited from ipsdk::BaseDynamicObject
virtual void initCtorCopy (const BaseDynamicObject &object)
 
virtual void copy (const BaseDynamicObject &object)
 

Protected Attributes

ipUInt64 _alignedRowNbData
 aligned row number of data
 
ipUInt64 _sizeX
 plan x size
 
ipUInt64 _sizeY
 plan y size
 
boost::scoped_array< ipUInt8_pPrevPlanGreyBuf
 backup of previously computed extremum plan
 
boost::scoped_array< ipUInt8_pCurPlanGreyBuf
 backup of currently computed extremum plan
 
boost::scoped_array< ipUInt8_pPrevPlanBinBuf
 backup of previously computed binary plan
 
boost::scoped_array< ipUInt8_pCurPlanBinBuf
 backup of currently computed binary plan
 
ipReal64 _usedBorderValue
 used border value
 
Attribute members
boost::shared_ptr< ipsdk::imaproc::attr::InZStrip3d_pInZStrip3d
 
boost::shared_ptr< ipsdk::imaproc::attr::InOptPreviousZStrip3d_pInOptPreviousZStrip3d
 
boost::shared_ptr< ipsdk::imaproc::attr::InLocalExtremumType_pInLocalExtremumType
 
boost::shared_ptr< ipsdk::imaproc::attr::OutNbModifiedPixels_pOutNbModifiedPixels
 
boost::shared_ptr< ipsdk::imaproc::attr::InOutZStrip3d_pInOutZStrip3d
 
Parsed data attributes
boost::shared_ptr< LineStripParser > _pInZStrip3dBuf
 Data preparator associated to attribute InZStrip3d.
 
boost::shared_ptr< LineStripParser > _pInOutZStrip3dBuf
 Data preparator associated to attribute InOutZStrip3d.
 
- Protected Attributes inherited from ipsdk::processor::BaseProcessor
eProcessorProgressAvailability _processorProgressAvailability
 
ipUInt32 _nbIter
 
- Protected Attributes inherited from ipsdk::core::BaseAction
 eCR_Failure
 
 eCR_Exception
 
 eCR_Cancellation
 
 eERD_Success
 
 eERD_Failure
 
 eERD_Canceled
 
 eERD_Running
 
- Protected Attributes inherited from ipsdk::SerializationObjectWithGuid
Guid _guid
 

Additional Inherited Members

- Public Types inherited from ipsdk::processor::BaseProcessingAlgorithm
typedef DataTypeIdentifierColl DataTypeIdColl
 
typedef AlgorithmFunctionIdentifier FunctionId
 
typedef AlgorithmFunctionSelector FunctionSelector
 
typedef BoolResult(BaseProcessingAlgorithm::* FunctionType) (const ProcessingInfo &info)
 
- Protected Types inherited from ipsdk::processor::BaseProcessingAlgorithm
typedef std::vector< DataParserPtrDataParserColl
 
- Protected Types inherited from ipsdk::processor::BaseProcessor
typedef std::vector< AttributePtrAttributeColl
 
typedef std::map< std::string, OutputInitializerPtrOutputInitializerColl
 
- Protected Types inherited from ipsdk::core::BaseAction
enum  eCleanReason
 
enum  eExecutionResultDerived
 
typedef ProcessingResult< eExecutionResultDerivedExecResultDerived
 

Detailed Description

Level 3 algorithm: grey reconstruction of an image 3d.

See Grey Reconstruction 3d for a complete algorithm description.

Author
E. Noirfalise
Date
2016/04/20

Algorithm associated library :

IPSDKIPLAdvancedMorphology

Attribute description for algorithm :

Name ToolTip Default Initializer
ipsdk::imaproc::attr::InZStrip3d [Input] z strip 3d for operation X
ipsdk::imaproc::attr::InOptPreviousZStrip3d [Input Optional] z strips 3d just before first currently processed element X
ipsdk::imaproc::attr::InLocalExtremumType [Input] local extremum type X
ipsdk::imaproc::attr::OutNbModifiedPixels [Output] number of pixels modified by the algorithm X
ipsdk::imaproc::attr::InOutZStrip3d [InOut] z strip 3d for operation X

Global attributes rule :

Global rule on attributes is given by
(ipsdk::imaproc::matchSizeAndType (_pInZStrip3d,_pInOutZStrip3d))

Data type algorithm function selector informations :

Processing function selection for this algorithm is based on following attribute data types :

For More informations about algorithm function selection see AlgorithmFunctionSelection

Algorithm parsed data informations :

Algorithm parsed data is based on following attributes :

For More informations about algorithm parsed data see AlgorithmParsedData

Member Function Documentation

◆ getStorage()

template<typename TAttribute >
TAttribute::StorageType ipsdk::imaproc::advmorpho::GreyReconstruction3dImgLvl3::getStorage ( )

retrieve storage associated to a given attribute

Note
This method is only available for Output and In/Out attributes
Exceptions
ipsdk::processor::IPSDKBaseProcessingExceptionif isInit() == false

◆ specificProcessFunction()

template<typename BufType , typename Operator , ipsdk::eInstructionSet::domain IS>
void ipsdk::imaproc::advmorpho::GreyReconstruction3dImgLvl3::specificProcessFunction ( const ipsdk::processor::ProcessingInfo info)
protected

specific processing function associated to class this method takes into account processing direction and extremum type


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