FLImaging 7.8.25.3
Mask.h
1#pragma once
2
14
15#include "AlgorithmFeature_SR_BAT.h"
16
17
19namespace FLImaging
20{
22 namespace ImageProcessing
23 {
24 class CInternalMask;
25
37 class FL_EXPORT CMask : public CAlgorithmFeature_SR_BAT
38 {
39 public:
45
50 CMask(const CMask& imageMask);
51
56 CMask(const CMask* pMask);
57
62 virtual ~CMask();
63
77 const CMask& operator=(const CMask& imageMask);
78
90 virtual const CResult Assign(const CMask& mask);
91
92 virtual int32_t GetOptimalThreadCount() const override;
93
105 virtual const CResult Assign(const CMask* pMask);
106
118 virtual const CResult Clear() override;
119
133 virtual const CResult Execute() override;
134
136
153 virtual const CResult SetMask(int32_t i32Mask);
154 virtual const CResult SetMask(int64_t i64Mask);
155 virtual const CResult SetMask(uint32_t u32Mask);
156 virtual const CResult SetMask(uint64_t u64Mask);
157 virtual const CResult SetMask(float f32Mask);
158 virtual const CResult SetMask(double f64Mask = 0.);
160
162
179 virtual const CResult SetMask(const Base::CMultiVar<int32_t>& mvMask);
180 virtual const CResult SetMask(const Base::CMultiVar<int64_t>& mvMask);
182
184
201 virtual const CResult SetMask(const Base::CMultiVar<uint32_t>& mvMask);
202 virtual const CResult SetMask(const Base::CMultiVar<uint64_t>& mvMask);
204
222 virtual const CResult SetMask(const Base::CMultiVar<float>& mvMask);
223
241 virtual const CResult SetMask(const Base::CMultiVar<double>& mvMask);
242
260 virtual const CResult GetMask(Base::CMultiVar<int32_t>& mvMask) const;
261
279 virtual const CResult GetMask(Base::CMultiVar<int32_t>* pMvMask) const;
280
298 virtual const CResult GetMask(Base::CMultiVar<int64_t>& mvMask) const;
299
317 virtual const CResult GetMask(Base::CMultiVar<int64_t>* pMvMask) const;
318
336 virtual const CResult GetMask(Base::CMultiVar<uint32_t>& mvMask) const;
337
355 virtual const CResult GetMask(Base::CMultiVar<uint32_t>* pMvMask) const;
356
374 virtual const CResult GetMask(Base::CMultiVar<uint64_t>& mvMask) const;
375
393 virtual const CResult GetMask(Base::CMultiVar<uint64_t>* pMvMask) const;
394
412 virtual const CResult GetMask(Base::CMultiVar<float>& mvMask) const;
413
431 virtual const CResult GetMask(Base::CMultiVar<float>* pMvMask) const;
432
450 virtual const CResult GetMask(Base::CMultiVar<double>& mvMask) const;
451
469 virtual const CResult GetMask(Base::CMultiVar<double>* pMvMask) const;
470
482 virtual const CResult EnableImageFiguresAsMaskingRegions(bool bImageFiguresAsMaskingRegions = false);
483
492
493 virtual bool IsLicenseAvailable() const override;
494
495
496 DeclareGetClassType();
497 SupportToDuplicateObject(CMask, *this);
498
499 protected:
500
509
518
527
528 bool m_bImageFiguresAsMaskingRegions;
529
530 protected:
531 friend class CInternalMask;
532
533 CInternalMask* m_pInternal;
534 };
535 }
536}
Multi variable class.
Definition MultiVar.h:31
FLImaging module execution result object.
Definition ResultsDef.h:1704
virtual const CResult SetMask(int64_t i64Mask)
virtual const CResult GetMask(Base::CMultiVar< uint32_t > &mvMask) const
virtual const CResult Clear() override
Base::CMultiVar< uint64_t > m_mvU64Mask
Definition Mask.h:526
CMask(const CMask &imageMask)
Base::CMultiVar< int64_t > m_mvI64Mask
Definition Mask.h:517
virtual const CResult SetMask(const Base::CMultiVar< float > &mvMask)
virtual const CResult GetMask(Base::CMultiVar< uint64_t > &mvMask) const
virtual const CResult SetMask(double f64Mask=0.)
virtual const CResult GetMask(Base::CMultiVar< int64_t > &mvMask) const
virtual const CResult SetMask(uint32_t u32Mask)
virtual const CResult GetMask(Base::CMultiVar< double > &mvMask) const
Base::CMultiVar< double > m_mvMask
Definition Mask.h:508
virtual const CResult GetMask(Base::CMultiVar< int32_t > &mvMask) const
virtual const CResult SetMask(const Base::CMultiVar< uint32_t > &mvMask)
virtual const CResult GetMask(Base::CMultiVar< float > *pMvMask) const
virtual const CResult GetMask(Base::CMultiVar< int32_t > *pMvMask) const
const CMask & operator=(const CMask &imageMask)
virtual const CResult SetMask(uint64_t u64Mask)
virtual const CResult GetMask(Base::CMultiVar< double > *pMvMask) const
virtual const CResult GetMask(Base::CMultiVar< uint64_t > *pMvMask) const
virtual const CResult EnableImageFiguresAsMaskingRegions(bool bImageFiguresAsMaskingRegions=false)
virtual int32_t GetOptimalThreadCount() const override
virtual const CResult GetMask(Base::CMultiVar< int64_t > *pMvMask) const
virtual const CResult SetMask(const Base::CMultiVar< double > &mvMask)
virtual const CResult Assign(const CMask &mask)
virtual const CResult SetMask(const Base::CMultiVar< int32_t > &mvMask)
virtual bool IsImageFiguresAsMaskingRegionsEnabled() const
virtual const CResult GetMask(Base::CMultiVar< float > &mvMask) const
virtual const CResult SetMask(const Base::CMultiVar< uint64_t > &mvMask)
virtual const CResult Execute() override
virtual const CResult SetMask(float f32Mask)
virtual const CResult SetMask(int32_t i32Mask)
virtual const CResult SetMask(const Base::CMultiVar< int64_t > &mvMask)
virtual bool IsLicenseAvailable() const override
Returns whether the algorithm can be used with the current license.
virtual const CResult GetMask(Base::CMultiVar< uint32_t > *pMvMask) const
virtual const CResult Assign(const CMask *pMask)
Definition AbsoluteThreshold.h:25