IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
Classes | Typedefs | Enumerations | Functions
ipsdk::shape::analysis Namespace Reference

Namespace aggregating basic shape analysis components. More...

Classes

class  BaseCollMeasureResult
 Base class for measure results associated to a collection of values for each shape. More...
 
class  BaseCustomMeasureResult
 Base class for measure results associated to a custom data type for each shape. More...
 
class  BaseGenericMeasure
 Base class for shape analysis generic measurement (generic measure using no input data for processing) More...
 
class  BaseGeometry2dMeasure
 Base class for shape analysis geometry 2d measurement (geometry measure using shape 2d data for processing) More...
 
class  BaseGeometry3dMeasure
 Base class for shape analysis geometry 3d measurement (geometry measure using shape 3d data for processing) More...
 
class  BaseIndivisibleMeasure
 Base class for shape analysis indivisible measurement (generic measure using no input data for processing and requesting a single pass processing) More...
 
class  BaseIntensity2dPreProcessorConfig
 Base class for objects allowing to define preprocessing configuration for 2d images used as inputs of shape analysis. More...
 
class  BaseIntensity3dPreProcessorConfig
 Base class for objects allowing to define preprocessing configuration for 3d images used as inputs of shape analysis. More...
 
class  BaseIntensityMeasure
 Base class for shape analysis intensity measurement (geometry measure using image data for processing) More...
 
class  BaseIntensityPreProcessorConfig
 Base class for objects allowing to define preprocessing configuration for images used as inputs of shape analysis. More...
 
class  BaseMeasure
 Base class for shape analysis measurement. More...
 
class  BaseMeasureInfo
 Base class for shape analysis measurement informations. More...
 
class  BaseMeasureResult
 Base class for measure results. More...
 
class  BaseValueMeasureResult
 Base class for measure results associated to a single value for each shape. More...
 
class  CollMeasureResult
 Class associated to measure results agregating a collection of values for each shape. More...
 
struct  FormulaCoupledArithmeticFunctionInfo
 Formula coupled arithmetic function informations

. More...

 
struct  FormulaGenericArithmeticFunctionInfo
 Formula generic arithmetic function informations

. More...

 
class  FormulaManager
 Object allowing to manage shape analysis formula. More...
 
struct  FormulaVariable
 Formula variable associated to an identifier and a value

. More...

 
struct  FormulaVariableId
 Formula variable identifier optionally associated to an array and a color index

. More...

 
struct  ImageConstant
 Image Constant associated to an identifier and a value

. More...

 
struct  ImageConstantId
 Formula identifier for image constant optionally associated to a color index

. More...

 
class  IPSDKBaseShapeAnalysisException
 Exception class for library IPSDKBaseShapeAnalysis. More...
 
class  MeasureConfig
 Primary configuration for measures. More...
 
class  MeasureGlobalInfo
 Predefined types for shape measurement operations global informations. More...
 
struct  MeasureId
 structure allowing to identify a measure More...
 
class  MeasureInfoFactory
 Factory singleton allowing dynamic creation of registred measure information class. More...
 
class  MeasureInfoSet
 Object allowing to agregate a collection of measure informations. More...
 
class  MeasureSet
 Object allowing to agregate a collection of measure. More...
 
struct  MsrProcessingPolicyClass
 structure allowing to retrieve base measure class given a processing measure policy More...
 
struct  MsrProcessingVolumePolicy
 structure allowing to retrieve a measure volume policy given a processing measure policy More...
 
class  PlanIndexedMeasureSet
 Collection of plan indexed measure set objects. More...
 
struct  ShapeMeasureInfoRegistrator
 registrator class for shape measure information objects More...
 
class  ValueMeasureResult
 Class associated to measure results agregating a single value for each shape. More...
 

Typedefs

typedef ProcessingResult< eFormulaEvaluationStatusEvalStatus
 formula evaluation status
 
typedef boost::variant< ipBool, ipReal64FormulaResult
 formula result (floating point or logical result)

 
 
typedef boost::shared_ptr< ipReal64VariableValuePtr
 shared pointer to value associated to a variable

 
 
typedef std::map< ImageConstantId, VariableValuePtrConstantMap
 map associating an image constant id to its value
 
typedef std::map< FormulaVariableId, VariableValuePtrVariableMap
 map associating a formula variable id to its value
 
typedef boost::variant< ipBool, ipReal64, ImageConstant, FormulaVariable, eMsrFormulaOperatorType, eMsrFormulaUnaryArithmeticFunctionType, eMsrFormulaBinaryArithmeticFunctionType, FormulaGenericArithmeticFunctionInfo, FormulaCoupledArithmeticFunctionInfo, eMsrFormulaTernaryLogicFunctionTypeFormulaItem
 Concrete formula item variant.
 
typedef std::vector< FormulaItemFormulaItemColl
 collection of formula item
 
typedef boost::shared_ptr< FormulaManagerFormulaManagerPtr
 shared pointer to formula manager
 
typedef boost::function1< bool, const ipUInt32ResultsAccessor
 Accessor for measure results.
 
typedef std::vector< ResultsAccessorResultsAccessorColl
 collection of accessors for measure results
 
typedef std::vector< ResultsAccessorCollColorResultsAccessorColl
 collection of color accessors for measure results
 
typedef boost::shared_ptr< MeasureGlobalInfoMsrGlobalInfoPtr
 shared pointer to measure global information object
 
typedef boost::shared_ptr< const MeasureGlobalInfoMsrGlobalInfoConstPtr
 shared pointer to const measure global information object
 
typedef boost::shared_ptr< MeasureConfigMeasureConfigPtr
 shared pointer to MeasureConfig object
 
typedef boost::shared_ptr< const MeasureConfigMeasureConfigConstPtr
 shared pointer to const MeasureConfig object
 
typedef boost::shared_ptr< BaseIntensityPreProcessorConfigIntensityPreProcessorConfigPtr
 shared pointer to IntensityPreProcessorConfig object
 
typedef boost::shared_ptr< const BaseIntensityPreProcessorConfigIntensityPreProcessorConfigConstPtr
 shared pointer to const IntensityPreProcessorConfig object
 
typedef std::set< eMsrInputShapeCollIdShapeCollIdSet
 set of input shape collection id required by measures
 
typedef std::set< eMsrInputImageIdImageIdSet
 set of input image id required by measures
 
typedef boost::shared_ptr< BaseMeasureInfoMeasureInfoPtr
 shared pointer to shape measure information object
 
typedef boost::shared_ptr< const BaseMeasureInfoMeasureInfoConstPtr
 shared pointer to const shape measure information object
 
typedef boost::weak_ptr< BaseMeasureInfoMeasureInfoWeakPtr
 weak pointer to shape measure information object
 
typedef boost::weak_ptr< const BaseMeasureInfoMeasureInfoConstWeakPtr
 weak pointer to const shape measure information object
 
typedef std::map< std::string, MeasureInfoPtrMeasureInfoColl
 collection of shared pointer to shape measure information object
 
typedef std::map< std::string, MeasureInfoWeakPtrMeasureInfoWeakPtrColl
 collection of weak pointer to shape measure information object
 
typedef boost::shared_ptr< MeasureInfoSetMeasureInfoSetPtr
 shared pointer to shape measure information set
 
typedef boost::shared_ptr< const MeasureInfoSetMeasureInfoSetConstPtr
 shared pointer to const shape measure information set
 
typedef MeasureInfoPtr(* MsrInfoCreator) ()
 creation function for shared measure information objects
 
typedef std::map< std::string, std::string > AliasMap
 map associating a string to an other (an alias map)
 
typedef boost::optional< MeasureIdOptMeasureId
 optional structure allowing to identify a measure
 
typedef std::map< std::string, OptMeasureIdDependencyMap
 collection of measure dependencies
 
typedef boost::shared_ptr< DependencyMapDependencyMapPtr
 shared pointer to dependency map object
 
typedef boost::shared_ptr< const DependencyMapDependencyMapConstPtr
 shared pointer to const dependency map object
 
typedef boost::shared_ptr< BaseMeasureMeasurePtr
 shared pointer to shape measure object
 
typedef boost::shared_ptr< const BaseMeasureMeasureConstPtr
 shared pointer to const shape measure object
 
typedef boost::weak_ptr< BaseMeasureMeasureWeakPtr
 weak pointer to shape measure object
 
typedef boost::weak_ptr< const BaseMeasureMeasureConstWeakPtr
 weak pointer to const shape measure object
 
typedef std::map< std::string, MeasurePtrMeasureColl
 collection of shared pointer to shape measure object
 
typedef std::map< std::string, MeasureWeakPtrMeasureWeakPtrColl
 collection of weak pointer to shape measure object
 
typedef boost::shared_ptr< MeasureSetMeasureSetPtr
 shared pointer to shape measure set
 
typedef boost::shared_ptr< const MeasureSetMeasureSetConstPtr
 shared pointer to const shape measure set
 
typedef boost::shared_ptr< PlanIndexedMeasureSetPlanIndexedMeasureSetPtr
 shared pointer to plan indexed collection of shape measure set
 
typedef boost::shared_ptr< const PlanIndexedMeasureSetPlanIndexedMeasureSetConstPtr
 shared pointer to const plan indexed collection of shape measure set
 
typedef boost::shared_ptr< BaseMeasureResultMeasureResultPtr
 shared pointer to MeasureResult
 
typedef boost::shared_ptr< const BaseMeasureResultMeasureResultConstPtr
 shared pointer to const MeasureResult
 

Enumerations

enum  eIPSDKBaseShapeAnalysisMessage
 Enumerate describing messages. More...
 
enum  eFormulaMessage {
  eCantProcessArithmeticEvaluation, eCantProcessLogicEvaluation, eEvalFailedBadStackType, eEvalFailedOutOfData,
  eEvalFailedStackBadSize, eEvalWarnInvalidACos, eEvalWarnInvalidASin, eEvalWarnNegativeLog,
  eEvalWarnNegativeSqrt, eEvalWarnZeroDivide, eEvaluationFailed, eFailedToCreateValueAccessor,
  eFailedToApplyFormula, eFormulaCustomMsrNotAllowed, eFormulaManagerNotInit, eFormulaMsrResultTypeNotAllowed,
  eFormulaMsrUndefinedArrayIdx, eFormulaMsrUndefinedImageConstant, eInvalidColorPlanIdx, eInvalidOperationEnumValue,
  eInvalidReservedEnum, eInvalidResultType, eMsrNotFound, eNoGlobalInfo,
  eParsingException, eParsingFailure, eParsingNotEnded, ePreprocessingFailed,
  eResultTypeExtractionFailed
}
 Enumerate describing messages. More...
 
enum  eMsrFormulaOperatorType {
  eMFOT_UnaryPlus, eMFOT_UnaryMinus, eMFOT_Not, eMFOT_Plus,
  eMFOT_Minus, eMFOT_Multiply, eMFOT_Divide, eMFOT_Power,
  eMFOT_And, eMFOT_Or, eMFOT_Equal, eMFOT_NotEqual,
  eMFOT_Greater, eMFOT_GreaterOrEqual, eMFOT_Lower, eMFOT_LowerOrEqual
}
 Enumerate describing measure formula operation type. More...
 
enum  eMsrFormulaUnaryArithmeticFunctionType {
  eMFUAFT_Abs, eMFUAFT_Sqrt, eMFUAFT_Exp, eMFUAFT_Log,
  eMFUAFT_Cos, eMFUAFT_Sin, eMFUAFT_Tan, eMFUAFT_ACos,
  eMFUAFT_ASin, eMFUAFT_ATan, eMFUAFT_CosH, eMFUAFT_SinH,
  eMFUAFT_TanH
}
 Enumerate describing measure formula unary arithmetical function type. More...
 
enum  eMsrFormulaBinaryArithmeticFunctionType { eMFBAFT_ATan2 }
 Enumerate describing measure formula binary arithmetical function type. More...
 
enum  eMsrFormulaGenericArithmeticFunctionType {
  eMFGAFT_Min, eMFGAFT_Max, eMFGAFT_Sum, eMFGAFT_Mean,
  eMFGAFT_Median, eMFGAFT_StdDev, eMFGAFT_Variance, eMFGAFT_NormL1,
  eMFGAFT_NormL2
}
 Enumerate describing measure formula generic arithmetical function type. More...
 
enum  eMsrFormulaCoupledArithmeticFunctionType { eMFCAFT_Distance }
 Enumerate describing measure coupled formula arithmetical function type. More...
 
enum  eMsrFormulaTernaryLogicFunctionType { eMFTLFT_If }
 Enumerate describing measure formula ternary logical function type. More...
 
enum  eMsrFormulaReserved {
  eMFR_ImageSizeX, eMFR_ImageSizeY, eMFR_ImageSizeZ, eMFR_ImageCenterX,
  eMFR_ImageCenterY, eMFR_ImageCenterZ, eMFR_PlanMinGL, eMFR_PlanMaxGL
}
 enumerate describing formula reserved variable More...
 
enum  eMsrFormulaResultType { eMFRT_Logic, eMFRT_Arithmetic }
 Enumerate describing measure formula result type. More...
 
enum  eFormulaEvaluationStatus { eMES_Success, eMES_Warning, eMES_Failure }
 Enumerate describing measure formula evaluation status. More...
 
enum  eMeasureGlobalInfoMessage {
  eInvalidCPlanIdx, eMaxColorSizeMismatch, eMeasureGlobalInfoNotInit, eMinColorSizeMismatch,
  eNullGeometryPtr
}
 Enumerate describing messages. More...
 
enum  eMsrInputShapeCollId { eMISCI_ShapeColl1, eMISCI_ShapeColl2, eMISCI_ShapeColl3, eMISCI_ShapeColl4 }
 Enumerate allowing to identify shape collection used for processing. More...
 
enum  eMsrCalibrationType { eMCT_None, eMCT_Default, eMCT_Global, eMCT_Custom }
 Enumerate allowing to specify used calibration type. More...
 
enum  eMsrInputImageId { eMIII_Image1, eMIII_Image2, eMIII_Image3, eMIII_Image4 }
 Enumerate allowing to identify used input image for processing. More...
 
enum  eMeasureInfoMessage {
  eDependencyAlreadyExists, eEquivalentDependencyAlreadyExists, eFailedToCreateMsrInfo, eIntensityPreProcessorConfigNotInit,
  eIntensityPreProcessorNullInImg, eInvalidMsrProcessingPolicy, eMeasureInfoAlreadyExists, eMeasureInfoAlreadyRegistred,
  eMeasureInfoInvalid2dMode, eMeasureInfoInvalid3dMode, eMeasureInfoInvalidConfigType, eMeasureInfoInvalidConfigVolumePolicy,
  eMeasureInfoInvalidName, eMeasureInfoInvalidParam, eMeasureInfoInvalidParamType, eMeasureInfoNoBaseParams,
  eMeasureInfoNoGlobalGeometricCalibration, eMeasureInfoNoParams, eMeasureInfoNotInit, eMeasureInfoNotRegistredCantCreate,
  eMeasureInfoNotRegistredCantRemove, eMeasureInfoReservedName, eMeasureInfoSetCantFind, eMsrInfoCreationFailed,
  eMsrUnitFormatNotYetSupported, eNoDependencyCantGeParams, eNoGlobalGeometricCalibration, eNullCreatedMeasurePtr,
  eNullMeasureInfoSharedFromThis, eReservedMeasureNameCantRegister
}
 Enumerate describing messages. More...
 
enum  eMsrProcessingPolicy {
  eMPP_Indivisible, eMPP_Generic, eMPP_Geometry2d, eMPP_Geometry3d,
  eMPP_Intensity
}
 Enumerate describing measure processing policy. More...
 
enum  eMsrVolumePolicy { eMVP_2d, eMVP_3d, eMVP_2d3d }
 Enumerate describing measure volume policy. More...
 
enum  eMsrNameType { eMNT_User, eMNT_Default }
 Enumerate describing measure name type. More...
 
enum  eMsrShapeRequirements { eMSR_RequireShapeNone, eMSR_RequireShapeRowIntersect, eMSR_RequireShapeBoundaryApprox, eMSR_RequireShapeAll }
 Enumerate describing shape data requirement for measure computation. More...
 
enum  eMsrUnitFormat {
  eMUF_NoUnit, eMUF_CustomUnit, eMUF_LengthUnit, eMUF_AreaUnit,
  eMUF_VolumeUnit, eMUF_RadianUnit
}
 Enumerate describing unit format associated to measure. More...
 
enum  eMeasureMessage {
  eCantCollectNotGeneric, eCantCollectNotGeometry2d, eCantCollectNotGeometry3d, eCantCollectNotIntensity,
  eCantEnd2dProcessingNot2dMeasureSet, eCantEnd2dProcessingNot2dMode, eCantEnd3dProcessingNot3dMeasureSet, eCantEnd3dProcessingNot3dMode,
  eCantEndShapeMsrNotIntensity, eCantMeasureNotGeneric, eCantMeasureNotGeometry2d, eCantMeasureNotGeometry3d,
  eCantMeasureNotIndivisible, eCantMeasureNotIntensity, eCantStartShapeMsrNotIntensity, eDependencyNotFound,
  eGenericMsrFailed, eGeometry2dMsrFailed, eGeometry3dMsrFailed, eIndivisibleMsrFailed,
  eIntensityMsrEndShapeFailed, eIntensityMsrFailed, eIntensityMsrResultCollectFailed, eIntensityMsrStartShapeFailed,
  eInvalidImageBufferType, eMeasureInfoNotInit, eMeasureNameCollectMismatch, eMeasureNotInit,
  eMeasureNotProcessing, eMeasureProcessingNotEnded, eMeasureProcessingNotStarted, eMeasureSetCantFind,
  eNoBoundaryApprox, eNoMsrGlobalInfo, eNoMsrGlobalInfoForImage, eNoRowIntersections,
  eNullMeasureInfoPtr, eNullMeasureInfoSetPtr, eNullMsrGlobalInfoPtr, eUnCompatibleMeasureSet
}
 Enumerate describing messages. More...
 
enum  eMsrProcessingStatus { eMPS_NotStarted, eMPS_Started, eMPS_Ended }
 Enumerate describing measure processing status. More...
 
enum  eMeasureResultMessage {
  eCollectResultColorSizeMismatch, eCollectResultSizeMismatch, eCollectResultTypeMismatch, eExtractResultColorSizeMismatch,
  eExtractResultSizeMismatch, eExtractResultTypeMismatch, eFailedToSaveResultMeasureFile, eInvalidColorPlanIdx,
  eInvalidMeasureResultTargetType, eInvalidMsrResultDataType, eInvalidNbColorPlans, eMainIdxCollSizeMismatch,
  eMeasureResultNotInit, eNullMeasurePtr, eSubIdxCollSizeMismatch
}
 Enumerate describing messages. More...
 
enum  eMsrResultType { eMRT_Value, eMRT_Coll, eMRT_Custom }
 Enumerate describing measure measure result type. More...
 
enum  eMsrResultCsvUnitFormat { eMRCUF_Ignored, eMRCUF_Appended, eMRCUF_NextLine }
 

Functions

IPSDKBASESHAPEANALYSIS_API const std::string & getIPSDKBaseShapeAnalysisLoggerName ()
 Recovery of logger name associated to library.
 
IPSDKBASESHAPEANALYSIS_API log4cplus::Logger & getIPSDKBaseShapeAnalysisLogger ()
 Recovery of logger associated to library.
 
IPSDKBASESHAPEANALYSIS_API const ipsdk::LogMessageManagergetIPSDKBaseShapeAnalysisLogMessageManager ()
 Recovery of message manager associated to library.
 
IPSDKBASESHAPEANALYSIS_API Real64Vector applyArithmeticFormula (const std::string &formulaStr, const MeasureSet &measureSet, const ipUInt64 cPlanIdx=0, const eMsrInputImageId &msrInputImageId=eMsrInputImageId::eMIII_Image1)
 function allowing to apply an arithmetic formula on an existing measure set More...
 
IPSDKBASESHAPEANALYSIS_API BoolResult applyArithmeticFormula (const std::string &formulaStr, const MeasureSet &measureSet, const ipUInt64 cPlanIdx, const eMsrInputImageId &msrInputImageId, Real64Vector &resultsColl)
 function allowing to apply an arithmetic formula on an existing measure set More...
 
IPSDKBASESHAPEANALYSIS_API BoolVector applyLogicFormula (const std::string &formulaStr, const MeasureSet &measureSet, const ipUInt64 cPlanIdx=0, const eMsrInputImageId &msrInputImageId=eMsrInputImageId::eMIII_Image1)
 function allowing to apply a logic formula on an existing measure set More...
 
IPSDKBASESHAPEANALYSIS_API BoolResult applyLogicFormula (const std::string &formulaStr, const MeasureSet &measureSet, const ipUInt64 cPlanIdx, const eMsrInputImageId &msrInputImageId, BoolVector &resultsColl)
 function allowing to apply a logic formula on an existing measure set More...
 
IPSDKBASESHAPEANALYSIS_API bool isReservedName (const std::string &formulaVariable)
 function allowing to check whether a variable name is a reserved name
 
IPSDKBASESHAPEANALYSIS_API const std::string & getReservedName (const eMsrFormulaReserved &msrFormulaReserved)
 function allowing to check whether a variable name is a reserved name
 
IPSDKBASESHAPEANALYSIS_API BoolResult createAccessor (const BaseMeasureResult &baseMeasureResult, const FormulaVariableId &variableId, const ipsdk::ipUInt64 cPlanIdx, ipReal64 &resultValue, ResultsAccessor &resultsAccessor)
 function allowing to create an accessor for formula measure dependency results
 
IPSDKBASESHAPEANALYSIS_API BoolResult setImageConstant (const ImageConstantId &imageConstantId, const ipsdk::ipUInt64 cPlanIdx, const MeasureGlobalInfo &measureGlobalInfo, ipReal64 &csteValue)
 
IPSDKBASESHAPEANALYSIS_API bool operator< (const ImageConstantId &id1, const ImageConstantId &id2)
 image constant identifier comparison operator
 
IPSDKBASESHAPEANALYSIS_API bool operator< (const FormulaVariableId &id1, const FormulaVariableId &id2)
 variable identifier comparison operator
 
IPSDKBASESHAPEANALYSIS_API MeasureConfigPtr createMeasureConfig (const eMsrInputImageId &imageId, const eMsrInputShapeCollId &shapeCollId)
 function allowing to create a measure configuration used for intensity measurement working with an unmodified input image
 
IPSDKBASESHAPEANALYSIS_API MeasureConfigPtr createUnCalibratedMeasureConfig (const eMsrInputShapeCollId &shapeCollId)
 function allowing to create a measure configuration used for geometric measurement working with an uncalibrated input shape
 
IPSDKBASESHAPEANALYSIS_API MeasureConfigPtr createGloballyCalibratedMeasureConfig (const eMsrInputShapeCollId &shapeCollId)
 function allowing to create a measure configuration used for geometric measurement working with a calibrated input shape using global calibration
 
IPSDKBASESHAPEANALYSIS_API MeasureConfigPtr createCustomCalibratedMeasureConfig (const eMsrInputShapeCollId &shapeCollId, const GeometricCalibrationConstPtr &pCalibration)
 function allowing to create a measure configuration used for geometric measurement working with a calibrated input shape using custom calibration
 
IPSDKBASESHAPEANALYSIS_API std::string getDepencyUsedName (const std::string &measureName, const std::string &dependencyName)
 
IPSDKBASESHAPEANALYSIS_API bool isDepencyName (const std::string &measureName)
 function allowing to check whether a measure name is a dependency
 
IPSDKBASESHAPEANALYSIS_API bool compareMsrConfig (const MeasureConfigConstPtr &pConfig1, const MeasureConfigConstPtr &pConfig2)
 function allowing to compare measure primary configuration shared pointers
 
IPSDKBASESHAPEANALYSIS_API bool compareMsrParams (const DataItemConstPtr &pMeasureParams1, const DataItemConstPtr &pMeasureParams2)
 function allowing to compare measure parameters shared pointers
 
IPSDKBASESHAPEANALYSIS_API std::string formatUnitStr (const std::string &baseUnitStr, const eMsrUnitFormat &msrUnitFormat)
 function allowing to format measure unit from base length unit and from a format descriptor More...
 
IPSDKBASESHAPEANALYSIS_API std::string formatUnitTimesUnit (const std::string &unitStr1, const std::string &unitStr2)
 function allowing to 'multiply' two units string
 
IPSDKBASESHAPEANALYSIS_API std::string formatUnitDivUnit (const std::string &unitStr1, const std::string &unitStr2)
 function allowing to 'divide' a unit string by an other
 
IPSDKBASESHAPEANALYSIS_API BoolResult saveCsvMeasureFile (const boost::filesystem::path &csvMeasureFilePath, const MeasureSet &measureSet, const eMsrResultCsvUnitFormat &msrResultCsvUnitFormat=eMsrResultCsvUnitFormat::eMRCUF_NextLine)
 function allowing to save a measure result to csv file More...
 
template<typename T >
IPSDKBASESHAPEANALYSIS_API const std::vector< T > & extractValueResults (const MeasureConstPtr &pMeasure, const ipUInt64 cPlanIdx=0)
 function allowing to extract measure results for measures associated to values More...
 
template<typename T >
IPSDKBASESHAPEANALYSIS_API const std::vector< std::vector< T > > & extractCollResults (const MeasureConstPtr &pMeasure, const ipUInt64 cPlanIdx=0)
 function allowing to extract measure results for measures associated to collections More...
 
template<typename T >
IPSDKBASESHAPEANALYSIS_API bool compare (const ValueMeasureResult< T > &msrResult1, const ValueMeasureResult< T > &msrResult2, const T tolerance=NumericLimits< T >::s_sqrt_eps)
 comparison of two ValueMeasureResult More...
 
template<typename T >
IPSDKBASESHAPEANALYSIS_API bool compareRelative (const ValueMeasureResult< T > &msrResult1, const ValueMeasureResult< T > &msrResult2, const T tolerance=NumericLimits< T >::s_sqrt_eps)
 comparison of two ValueMeasureResult with relative values comparison More...
 
template<typename T >
IPSDKBASESHAPEANALYSIS_API bool compare (const CollMeasureResult< T > &msrResult1, const CollMeasureResult< T > &msrResult2, const T tolerance=NumericLimits< T >::s_sqrt_eps)
 comparison of two CollMeasureResult More...
 
template<typename T >
IPSDKBASESHAPEANALYSIS_API bool compareRelative (const CollMeasureResult< T > &msrResult1, const CollMeasureResult< T > &msrResult2, const T tolerance=NumericLimits< T >::s_sqrt_eps)
 comparison of two ValueMeasureResult with relative values comparison More...
 
template<typename T >
IPSDKBASESHAPEANALYSIS_API bool compareValue (const MeasureConstPtr &pMeasure1, const MeasureConstPtr &pMeasure2, const T tolerance=NumericLimits< T >::s_sqrt_eps)
 comparison of two measure results (value results case) More...
 
template<typename T >
IPSDKBASESHAPEANALYSIS_API bool compareRelativeValue (const MeasureConstPtr &pMeasure1, const MeasureConstPtr &pMeasure2, const T tolerance=NumericLimits< T >::s_sqrt_eps)
 comparison of two measure results (value results case) with relative values comparison More...
 
template<typename T >
IPSDKBASESHAPEANALYSIS_API bool compareColl (const MeasureConstPtr &pMeasure1, const MeasureConstPtr &pMeasure2, const T tolerance=NumericLimits< T >::s_sqrt_eps)
 comparison of two measure results (collection results case) More...
 
template<typename T >
IPSDKBASESHAPEANALYSIS_API bool compareRelativeColl (const MeasureConstPtr &pMeasure1, const MeasureConstPtr &pMeasure2, const T tolerance=NumericLimits< T >::s_sqrt_eps)
 comparison of two measure results (collection results case) with relative values comparison More...
 
IPSDKBASESHAPEANALYSIS_API void createMeasureInfo (const MeasureInfoSetPtr &pMeasureInfoSet, const std::string &measureName, const std::string &measureDefaultName, const MeasureConfigConstPtr &pMeasureConfig=MeasureConfigConstPtr(), const DataItemConstPtr &pMeasureParams=DataItemConstPtr())
 functions allowing to create a new measure information and to insert it into a measure information set collection More...
 
IPSDKBASESHAPEANALYSIS_API void createMeasureInfo (const MeasureInfoSetPtr &pMeasureInfoSet, const std::string &measureName, const std::string &measureDefaultName, const DataItemConstPtr &pMeasureParams)
 functions allowing to create a new measure information and to insert it into a measure information set collection More...
 
IPSDKBASESHAPEANALYSIS_API void createMeasureInfo (const MeasureInfoSetPtr &pMeasureInfoSet, const std::string &measureDefaultName, const MeasureConfigConstPtr &pMeasureConfig=MeasureConfigConstPtr(), const DataItemConstPtr &pMeasureParams=DataItemConstPtr())
 functions allowing to create a new measure information and to insert it into a measure information set collection More...
 
IPSDKBASESHAPEANALYSIS_API void createMeasureInfo (const MeasureInfoSetPtr &pMeasureInfoSet, const std::string &measureDefaultName, const DataItemConstPtr &pMeasureParams)
 functions allowing to create a new measure information and to insert it into a measure information set collection More...
 
IPSDKBASESHAPEANALYSIS_API std::string formatUnitPower (const std::string &unitStr, const ipUInt32 power)
 functions allowing to 'power' a unit string by an integer
 
IPSDKBASESHAPEANALYSIS_API std::string formatUnitPower (const std::string &unitStr, const ipInt32 power)
 functions allowing to 'power' a unit string by an integer
 

Detailed Description

Namespace aggregating basic shape analysis components.

Enumeration Type Documentation

◆ eIPSDKBaseShapeAnalysisMessage

Enumerate describing messages.

Note
This enumerate is associated to a message map
See also
IPSDK_Message_Map

◆ eFormulaMessage

Enumerate describing messages.

Note
This enumerate is associated to a message map
See also
IPSDK_Message_Map
Enumerator
eCantProcessArithmeticEvaluation 

Can't process arithmetic evaluation for logic formula.

eCantProcessLogicEvaluation 

Can't process logical evaluation for arithmetic formula.

eEvalFailedBadStackType 

Formula evaluation failed, bad stack type (arithmetic/logic mismatch), expecting s.

eEvalFailedOutOfData 

Formula evaluation failed, running out of stacked values for operation s.

eEvalFailedStackBadSize 

Formula evaluation failed, bad stack ending size d (should remain a single element)

eEvalWarnInvalidACos 

Formula evaluation warning, invalid value {s} for arc cosinus computation.

eEvalWarnInvalidASin 

Formula evaluation warning, invalid value {s} for arc sinus computation.

eEvalWarnNegativeLog 

Formula evaluation warning, negative {f} log computation.

eEvalWarnNegativeSqrt 

Formula evaluation warning, negative {f} square root computation.

eEvalWarnZeroDivide 

Formula evaluation warning, zero division.

eEvaluationFailed 

Evaluation failed for formula {s}.

eFailedToCreateValueAccessor 

Failed to create value accessor for variable s and color plan index d.

eFailedToApplyFormula 

Failed to apply formula s to measure set
s.

eFormulaCustomMsrNotAllowed 

Custom measure [s] not allowed for formula measure dependency.

eFormulaManagerNotInit 

Formula manager has not been initialized.

eFormulaMsrResultTypeNotAllowed 

Measure result type [s] not allowed for formula measure dependency s.

eFormulaMsrUndefinedArrayIdx 

Undefined array index for formula measure dependency s.

eFormulaMsrUndefinedImageConstant 

Undefined image constant s in measure formula.

eInvalidColorPlanIdx 

Invalid color plan index d, for measures with d color plans.

Invalid color plan index d for measure result associated to d color plans.

eInvalidOperationEnumValue 

Invalid operation enumerate value s.

eInvalidReservedEnum 

Invalid formula variable reserve enumerate value s.

eInvalidResultType 

Invalid formula result type s, expecting s result type.

eMsrNotFound 

Measure with name s has not been found into measure set.

eNoGlobalInfo 

Global information associated to image with id d has not be found to set value for formula constants.

eParsingException 

Exception thrown while parsing formula string {s}
s.

eParsingFailure 

Failed to parse formula string {s}.

eParsingNotEnded 

Formula string {s} not ended after parsing, remaining tail string {s}.

ePreprocessingFailed 

Formula preprocessing phasis failed for formula {s}
s.

eResultTypeExtractionFailed 

Failed to extract result type for formula {s}
s.

◆ eMeasureGlobalInfoMessage

Enumerate describing messages.

Note
This enumerate is associated to a message map
See also
IPSDK_Message_Map
Enumerator
eInvalidCPlanIdx 

Invalid color plan index d for measure global information.

eMaxColorSizeMismatch 

Input maximum grey level collection size [d] mismatch with image geometry color size [d].

eMeasureGlobalInfoNotInit 

Measure global information has not been initialized.

eMinColorSizeMismatch 

Input minimum grey level collection size [d] mismatch with image geometry color size [d].

eNullGeometryPtr 

Input image geometry shared pointer should not be null.

◆ eMsrInputShapeCollId

Enumerate allowing to identify shape collection used for processing.

Note
This object is associated to a strong enumerate definition
See also
IPSDK_Enum
Enumerator
eMISCI_ShapeColl1 

measure processings are associated to first shape collection

eMISCI_ShapeColl2 

measure processings are associated to second shape collection

eMISCI_ShapeColl3 

measure processings are associated to third shape collection

eMISCI_ShapeColl4 

measure processings are associated to fourth shape collection

◆ eMsrCalibrationType

Enumerate allowing to specify used calibration type.

Note
This object is associated to a strong enumerate definition
See also
IPSDK_Enum
Enumerator
eMCT_None 

measure processings are not associated to a calibration

eMCT_Default 

measure processings are associated to the global measure information set calibration if set, none otherwize

eMCT_Global 

measure processings are associated to the global measure information set calibration

eMCT_Custom 

measure processings are associated to the specific measure calibration

◆ eMsrInputImageId

Enumerate allowing to identify used input image for processing.

Note
This object is associated to a strong enumerate definition
See also
IPSDK_Enum
Enumerator
eMIII_Image1 

measure processings are associated to first image

eMIII_Image2 

measure processings are associated to second image

eMIII_Image3 

measure processings are associated to third image

eMIII_Image4 

measure processings are associated to fourth image

◆ eMeasureInfoMessage

Enumerate describing messages.

Note
This enumerate is associated to a message map
See also
IPSDK_Message_Map
Enumerator
eDependencyAlreadyExists 

Dependency with name s already exists for measure information s.

eEquivalentDependencyAlreadyExists 

A dependency with default name s and same parameters already exists for measure information s.

eFailedToCreateMsrInfo 

Failed to create measure with default name s
s.

eIntensityPreProcessorConfigNotInit 

Intensity pre processor configuration has not been initialized.

eIntensityPreProcessorNullInImg 

Input image shared pointer for intensity pre processor configuration should not be null while creating processor.

eInvalidMsrProcessingPolicy 

Invalid measure processing policy, unhandled enumerate value s.

eMeasureInfoAlreadyExists 

Measure information s already exists, can't add it.

eMeasureInfoAlreadyRegistred 

Measure information with default name s has already been registred into factory.

eMeasureInfoInvalid2dMode 

2d volume mode policy is not allowed for measure s associated to measure type s

eMeasureInfoInvalid3dMode 

3d volume mode policy is not allowed for measure s associated to measure type s

eMeasureInfoInvalidConfigType 

Invalid measure primary configuration type s for measure information s, expecting type s.

eMeasureInfoInvalidConfigVolumePolicy 

Measure information primary configuration is not valid given measure volume policy (ie 2d/3d mode) for measure s.

eMeasureInfoInvalidName 

Measure name s has not a valid alphanumeric format, can't associate it to measure s.

eMeasureInfoInvalidParam 

Invalid measure parameters for measure information s
s.

eMeasureInfoInvalidParamType 

Invalid measure parameters type s for measure information s, expecting type s.

eMeasureInfoNoBaseParams 

Measure information with default name s expect no base parameters while s parameter has been provided.

eMeasureInfoNoGlobalGeometricCalibration 

Base parameters of measure information with default name s expect a global calibration while it has not been provided.

eMeasureInfoNoParams 

Measure information with default name s expect no parameters while s parameter has been provided.

eMeasureInfoNotInit 

Measure information s has not been initialized.

Input measure information should be initialized.

eMeasureInfoNotRegistredCantCreate 

Measure information with default name s has not been registred into factory, cant create associated instance.

eMeasureInfoNotRegistredCantRemove 

Measure information with default name s has not been registred into factory, cant remove it.

eMeasureInfoReservedName 

Measure name s is a reserved name, can't associate it to measure s.

eMeasureInfoSetCantFind 

Can't find measure information s into measure information set.

eMsrInfoCreationFailed 

Creation of measure information type s with name s failed
s.

eMsrUnitFormatNotYetSupported 

Measure unit format s is not yet supported.

eNoDependencyCantGeParams 

Measure d is not a dependency of s, can't retrieve associated parameters.

eNoGlobalGeometricCalibration 

Global calibration object has not been provided, can't retrieve it.

eNullCreatedMeasurePtr 

Derived class returned a null measure shared pointer for measure information s.

eNullMeasureInfoSharedFromThis 

Shared from this return a null pointer for measure information s.

eReservedMeasureNameCantRegister 

Measure name s is reserved, can't register.

◆ eMsrProcessingPolicy

Enumerate describing measure processing policy.

Note
This object is associated to a strong enumerate definition
See also
IPSDK_Enum
Enumerator
eMPP_Indivisible 

generic measure using no input data for processing and requesting a single pass processing

eMPP_Generic 

generic measure using no input data for processing

eMPP_Geometry2d 

geometry measure using shape 2d data for processing

eMPP_Geometry3d 

geometry measure using shape 3d data for processing

eMPP_Intensity 

geometry measure using image data for processing

◆ eMsrVolumePolicy

Enumerate describing measure volume policy.

Note
This object is associated to a strong enumerate definition
See also
IPSDK_Enum
Enumerator
eMVP_2d 

measure can only be used in 2d case

eMVP_3d 

measure can only be used in 3d case

eMVP_2d3d 

measure can be used in 2d and 3d cases

◆ eMsrNameType

Enumerate describing measure name type.

Note
This object is associated to a strong enumerate definition
See also
IPSDK_Enum
Enumerator
eMNT_User 

measure name attributed by user

eMNT_Default 

default measure name

◆ eMsrShapeRequirements

Enumerate describing shape data requirement for measure computation.

Note
This object is associated to a strong enumerate definition
See also
IPSDK_Enum
Enumerator
eMSR_RequireShapeNone 

measure do not need any data from shape

eMSR_RequireShapeRowIntersect 

measure requires row intersection data from shape

eMSR_RequireShapeBoundaryApprox 

measure requires boundary approximation data from shape

eMSR_RequireShapeAll 

measure requires row intersection and boundary approximation data from shape

◆ eMsrUnitFormat

Enumerate describing unit format associated to measure.

Note
This object is associated to a strong enumerate definition
See also
IPSDK_Enum
Enumerator
eMUF_NoUnit 

measure is not associated to any unit

eMUF_CustomUnit 

measure unit is associated to a custom format

eMUF_LengthUnit 

measure result can be interpreted as a length measurement, its unit is retrieved from calibration unit (ie µm for example if µm is the calibration unit)

eMUF_AreaUnit 

measure result can be interpreted as an area measurement, its unit is retrieved from calibration unit (ie µm^2 for example if µm is the calibration unit)

eMUF_VolumeUnit 

measure result can be interpreted as a volume measurement, its unit is retrieved from calibration unit (ie µm^3 for example if µm is the calibration unit)

eMUF_RadianUnit 

measure result can be interpreted as an angular measurement, its unit is defined as radian

◆ eMeasureMessage

Enumerate describing messages.

Note
This enumerate is associated to a message map
See also
IPSDK_Message_Map
Enumerator
eCantCollectNotGeneric 

Can't collect measure results, measure s is not a generic measure.

eCantCollectNotGeometry2d 

Can't collect measure results, measure s is not a geometry 2d measure.

eCantCollectNotGeometry3d 

Can't collect measure results, measure s is not a geometry 3d measure.

eCantCollectNotIntensity 

Can't collect measure results, measure s is not an intensity measure.

eCantEnd2dProcessingNot2dMeasureSet 

Can't end 2d processing, not a 2d measure set.

eCantEnd2dProcessingNot2dMode 

Can't end 2d processing for measure s which is not used in 2d mode.

eCantEnd3dProcessingNot3dMeasureSet 

Can't end 3d processing, not a 3d measure set.

eCantEnd3dProcessingNot3dMode 

Can't end 3d processing for measure s which is not used in 3d mode.

eCantEndShapeMsrNotIntensity 

Can't end shape measure, measure s is not an intensity measure.

eCantMeasureNotGeneric 

Can't measure shape, measure s is not a generic measure.

eCantMeasureNotGeometry2d 

Can't measure shape, measure s is not a geometry 2d measure.

eCantMeasureNotGeometry3d 

Can't measure shape, measure s is not a geometry 3d measure.

eCantMeasureNotIndivisible 

Can't measure shape, measure s is not an indivisible measure.

eCantMeasureNotIntensity 

Can't measure shape, measure s is not an intensity measure.

eCantStartShapeMsrNotIntensity 

Can't start shape measure, measure s is not an intensity measure.

eDependencyNotFound 

Dependency s has not been found for measure s.

eGenericMsrFailed 

Generic measure s has failed for shape with index d
s.

eGeometry2dMsrFailed 

Geometry 2d measure s has failed for shape with index d
s.

eGeometry3dMsrFailed 

Geometry 3d measure s has failed for shape with index d
s.

eIndivisibleMsrFailed 

Indivisible measure s has failed
s.

eIntensityMsrEndShapeFailed 

Measure end shape failed for intensity measure s
s.

eIntensityMsrFailed 

Intensity measure s has failed for shape with index d
s.

eIntensityMsrResultCollectFailed 

Measure results collect failed for intensity measure s
s.

eIntensityMsrStartShapeFailed 

Measure start shape failed for intensity measure s
s.

eInvalidImageBufferType 

Invalid image buffer type enumerate value s, can't process intensity measure.

eMeasureInfoNotInit 

Measure information s has not been initialized.

Input measure information should be initialized.

eMeasureNameCollectMismatch 

Global measure default name s mismatch with sub measure default name s for result collect.

eMeasureNotInit 

Measure has not been initialized.

eMeasureNotProcessing 

Measure s is not processing.

eMeasureProcessingNotEnded 

Measure s processing has not been ended, can't get results.

eMeasureProcessingNotStarted 

Measure s processing has not been started.

eMeasureSetCantFind 

Can't find measure s into measure set.

eNoBoundaryApprox 

Geometric measure s requires shape boundary approximation, shape with index d do not provide these data.

eNoMsrGlobalInfo 

Measure s has not been associated to measure global information.

eNoMsrGlobalInfoForImage 

Measure global information not found for image id s.

eNoRowIntersections 

Geometric measure s requires row intersections of shape with image, shape with index d do not provide these data.

eNullMeasureInfoPtr 

Input measure information shared pointer should not be null.

eNullMeasureInfoSetPtr 

Input measure information set shared pointer should not be null.

eNullMsrGlobalInfoPtr 

Input measure global information pointer should not be null.

eUnCompatibleMeasureSet 

Measure set are not compatible, can't process merge and collect results.

◆ eMsrProcessingStatus

Enumerate describing measure processing status.

Note
This object is associated to a strong enumerate definition
See also
IPSDK_Enum
Enumerator
eMPS_NotStarted 

measure processing has not been started

eMPS_Started 

measure processing has been started

eMPS_Ended 

measure has been processed

◆ eMeasureResultMessage

Enumerate describing messages.

Note
This enumerate is associated to a message map
See also
IPSDK_Message_Map
Enumerator
eCollectResultColorSizeMismatch 

Measure result color size d mismatch with sub measure result color size d.

eCollectResultSizeMismatch 

Measure result size d mismatch with sub measure result size d and result start offset d.

eCollectResultTypeMismatch 

Measure result type s mismatch with sub measure result type s.

eExtractResultColorSizeMismatch 

Measure result color size d mismatch with main measure result color size d.

eExtractResultSizeMismatch 

Measure result size d mismatch with main measure result size d and result start offset d.

eExtractResultTypeMismatch 

Measure result type s mismatch with main measure result type s.

eFailedToSaveResultMeasureFile 

Failed to save result measure file s.

eInvalidColorPlanIdx 

Invalid color plan index d, for measures with d color plans.

Invalid color plan index d for measure result associated to d color plans.

eInvalidMeasureResultTargetType 

Invalid measure result target type, can't extract results.

eInvalidMsrResultDataType 

Measure result data type s is not valid.

eInvalidNbColorPlans 

Invalid number of color plans, should not be null.

eMainIdxCollSizeMismatch 

Main data index collection size s mismatch with sub measure result size s.

eMeasureResultNotInit 

Measure result has not been initialized.

eNullMeasurePtr 

Null measure shared pointer.

eSubIdxCollSizeMismatch 

Sub data index collection size s mismatch with sub measure result size s.

◆ eMsrResultCsvUnitFormat

Enumerator
eMRCUF_Ignored 

unit string will not be written into measure result csv

eMRCUF_Appended 

unit string will be appended to each column header into measure result csv

eMRCUF_NextLine 

unit string will be written on line just after column header line into measure result csv

Function Documentation

◆ setImageConstant()

IPSDKBASESHAPEANALYSIS_API BoolResult ipsdk::shape::analysis::setImageConstant ( const ImageConstantId imageConstantId,
const ipsdk::ipUInt64  cPlanIdx,
const MeasureGlobalInfo measureGlobalInfo,
ipReal64 csteValue 
)

function allowing to set image constant value associated to a given identifier

◆ createMeasureInfo() [1/4]

IPSDKBASESHAPEANALYSIS_API void ipsdk::shape::analysis::createMeasureInfo ( const MeasureInfoSetPtr pMeasureInfoSet,
const std::string &  measureName,
const std::string &  measureDefaultName,
const MeasureConfigConstPtr pMeasureConfig = MeasureConfigConstPtr(),
const DataItemConstPtr pMeasureParams = DataItemConstPtr() 
)

functions allowing to create a new measure information and to insert it into a measure information set collection

Exceptions
ipsdk::shape::analysis::IPSDKBaseShapeAnalysisExceptionif measure creation failed

◆ createMeasureInfo() [2/4]

IPSDKBASESHAPEANALYSIS_API void ipsdk::shape::analysis::createMeasureInfo ( const MeasureInfoSetPtr pMeasureInfoSet,
const std::string &  measureName,
const std::string &  measureDefaultName,
const DataItemConstPtr pMeasureParams 
)

functions allowing to create a new measure information and to insert it into a measure information set collection

Exceptions
ipsdk::shape::analysis::IPSDKBaseShapeAnalysisExceptionif measure creation failed

◆ createMeasureInfo() [3/4]

IPSDKBASESHAPEANALYSIS_API void ipsdk::shape::analysis::createMeasureInfo ( const MeasureInfoSetPtr pMeasureInfoSet,
const std::string &  measureDefaultName,
const MeasureConfigConstPtr pMeasureConfig = MeasureConfigConstPtr(),
const DataItemConstPtr pMeasureParams = DataItemConstPtr() 
)

functions allowing to create a new measure information and to insert it into a measure information set collection

Exceptions
ipsdk::shape::analysis::IPSDKBaseShapeAnalysisExceptionif measure creation failed

◆ createMeasureInfo() [4/4]

IPSDKBASESHAPEANALYSIS_API void ipsdk::shape::analysis::createMeasureInfo ( const MeasureInfoSetPtr pMeasureInfoSet,
const std::string &  measureDefaultName,
const DataItemConstPtr pMeasureParams 
)

functions allowing to create a new measure information and to insert it into a measure information set collection

Exceptions
ipsdk::shape::analysis::IPSDKBaseShapeAnalysisExceptionif measure creation failed

◆ getDepencyUsedName()

IPSDKBASESHAPEANALYSIS_API std::string ipsdk::shape::analysis::getDepencyUsedName ( const std::string &  measureName,
const std::string &  dependencyName 
)

function allowing to retrieve internal dependency used name given a measure name

◆ formatUnitStr()

IPSDKBASESHAPEANALYSIS_API std::string ipsdk::shape::analysis::formatUnitStr ( const std::string &  baseUnitStr,
const eMsrUnitFormat msrUnitFormat 
)

function allowing to format measure unit from base length unit and from a format descriptor

Exceptions
ipsdk::shape::analysis::IPSDKBaseShapeAnalysisExceptionif msrUnitFormat == eMsrUnitFormat::eMUF_CustomUnit

◆ compare() [1/2]

template<typename T >
IPSDKBASESHAPEANALYSIS_API bool ipsdk::shape::analysis::compare ( const ValueMeasureResult< T > &  msrResult1,
const ValueMeasureResult< T > &  msrResult2,
const T  tolerance = NumericLimits< T >::s_sqrt_eps 
)

comparison of two ValueMeasureResult

Exceptions
ipsdk::shape::analysis::IPSDKBaseShapeAnalysisExceptionif msrResult1.isInit() == false
ipsdk::shape::analysis::IPSDKBaseShapeAnalysisExceptionif msrResult2.isInit() == false

◆ compareRelative() [1/2]

template<typename T >
IPSDKBASESHAPEANALYSIS_API bool ipsdk::shape::analysis::compareRelative ( const ValueMeasureResult< T > &  msrResult1,
const ValueMeasureResult< T > &  msrResult2,
const T  tolerance = NumericLimits< T >::s_sqrt_eps 
)

comparison of two ValueMeasureResult with relative values comparison

Exceptions
ipsdk::shape::analysis::IPSDKBaseShapeAnalysisExceptionif msrResult1.isInit() == false
ipsdk::shape::analysis::IPSDKBaseShapeAnalysisExceptionif msrResult2.isInit() == false

◆ compare() [2/2]

template<typename T >
IPSDKBASESHAPEANALYSIS_API bool ipsdk::shape::analysis::compare ( const CollMeasureResult< T > &  msrResult1,
const CollMeasureResult< T > &  msrResult2,
const T  tolerance = NumericLimits< T >::s_sqrt_eps 
)

comparison of two CollMeasureResult

Exceptions
ipsdk::shape::analysis::IPSDKBaseShapeAnalysisExceptionif msrResult1.isInit() == false
ipsdk::shape::analysis::IPSDKBaseShapeAnalysisExceptionif msrResult2.isInit() == false

◆ compareRelative() [2/2]

template<typename T >
IPSDKBASESHAPEANALYSIS_API bool ipsdk::shape::analysis::compareRelative ( const CollMeasureResult< T > &  msrResult1,
const CollMeasureResult< T > &  msrResult2,
const T  tolerance = NumericLimits< T >::s_sqrt_eps 
)

comparison of two ValueMeasureResult with relative values comparison

Exceptions
ipsdk::shape::analysis::IPSDKBaseShapeAnalysisExceptionif msrResult1.isInit() == false
ipsdk::shape::analysis::IPSDKBaseShapeAnalysisExceptionif msrResult2.isInit() == false

◆ compareValue()

template<typename T >
IPSDKBASESHAPEANALYSIS_API bool ipsdk::shape::analysis::compareValue ( const MeasureConstPtr pMeasure1,
const MeasureConstPtr pMeasure2,
const T  tolerance = NumericLimits< T >::s_sqrt_eps 
)

comparison of two measure results (value results case)

Exceptions
ipsdk::shape::analysis::IPSDKBaseShapeAnalysisExceptionif pMeasure1.get() == 0 || pMeasure2.get() == 0
ipsdk::shape::analysis::IPSDKBaseShapeAnalysisExceptionif pMeasure1->getMsrProcessingStatus() == eMsrProcessingStatus::eMPS_NotStarted || pMeasure2->getMsrProcessingStatus() == eMsrProcessingStatus::eMPS_NotStarted
ipsdk::shape::analysis::IPSDKBaseShapeAnalysisExceptionif measure result is not of requested type

◆ compareRelativeValue()

template<typename T >
IPSDKBASESHAPEANALYSIS_API bool ipsdk::shape::analysis::compareRelativeValue ( const MeasureConstPtr pMeasure1,
const MeasureConstPtr pMeasure2,
const T  tolerance = NumericLimits< T >::s_sqrt_eps 
)

comparison of two measure results (value results case) with relative values comparison

Exceptions
ipsdk::shape::analysis::IPSDKBaseShapeAnalysisExceptionif pMeasure1.get() == 0 || pMeasure2.get() == 0
ipsdk::shape::analysis::IPSDKBaseShapeAnalysisExceptionif pMeasure1->getMsrProcessingStatus() == eMsrProcessingStatus::eMPS_NotStarted || pMeasure2->getMsrProcessingStatus() == eMsrProcessingStatus::eMPS_NotStarted
ipsdk::shape::analysis::IPSDKBaseShapeAnalysisExceptionif measure result is not of requested type

◆ compareColl()

template<typename T >
IPSDKBASESHAPEANALYSIS_API bool ipsdk::shape::analysis::compareColl ( const MeasureConstPtr pMeasure1,
const MeasureConstPtr pMeasure2,
const T  tolerance = NumericLimits< T >::s_sqrt_eps 
)

comparison of two measure results (collection results case)

Exceptions
ipsdk::shape::analysis::IPSDKBaseShapeAnalysisExceptionif pMeasure1.get() == 0 || pMeasure2.get() == 0
ipsdk::shape::analysis::IPSDKBaseShapeAnalysisExceptionif pMeasure1->getMsrProcessingStatus() == eMsrProcessingStatus::eMPS_NotStarted || pMeasure2->getMsrProcessingStatus() == eMsrProcessingStatus::eMPS_NotStarted
ipsdk::shape::analysis::IPSDKBaseShapeAnalysisExceptionif measure result is not of requested type

◆ compareRelativeColl()

template<typename T >
IPSDKBASESHAPEANALYSIS_API bool ipsdk::shape::analysis::compareRelativeColl ( const MeasureConstPtr pMeasure1,
const MeasureConstPtr pMeasure2,
const T  tolerance = NumericLimits< T >::s_sqrt_eps 
)

comparison of two measure results (collection results case) with relative values comparison

Exceptions
ipsdk::shape::analysis::IPSDKBaseShapeAnalysisExceptionif pMeasure1.get() == 0 || pMeasure2.get() == 0
ipsdk::shape::analysis::IPSDKBaseShapeAnalysisExceptionif pMeasure1->getMsrProcessingStatus() == eMsrProcessingStatus::eMPS_NotStarted || pMeasure2->getMsrProcessingStatus() == eMsrProcessingStatus::eMPS_NotStarted
ipsdk::shape::analysis::IPSDKBaseShapeAnalysisExceptionif measure result is not of requested type