ItalaApi  1.3.3
IDefectDetection.h
1 
2 /***********************************************************************************
3  *
4  * ItalaApi - Copyright (C) 2022 Opto Engineering
5  *
6  * THIS SOFTWARE IS PROVIDED "AS IS" WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES,
7  * INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
8  * FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE COPYRIGHT
9  * HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY SUFFERED BY LICENSE AS
10  * A RESULT OF USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES.
11  *
12  ***********************************************************************************/
13 
14 #ifndef ITALA_API_IDEFECTDETECTION_H
15 #define ITALA_API_IDEFECTDETECTION_H
16 
17 #include "ItalaApi/DefectivePixel.h"
18 #include "ItalaApi/Export.h"
19 #include "ItalaApi/IDisposable.h"
20 
21 namespace Itala {
22 
29 struct IDefectDetection : public IDisposable {
39  virtual void AccumulateDark(uint8_t* imageBuffer) = 0;
40 
47  virtual void AccumulateGray(uint8_t* imageBuffer) = 0;
48 
53  virtual void ResetDark() = 0;
54 
59  virtual void ResetGray() = 0;
60 
70  virtual DefectivePixelList FindLeaky(uint64_t maxFound, float threshold) = 0;
71 
77  virtual DefectivePixelList FindHotNCold(uint64_t maxFound, float threshold) = 0;
78 
79 protected:
80  virtual ~IDefectDetection() {}
81 };
82 
98 ITALA_API IDefectDetection* CreateDefectDetection(size_t width, size_t height, PixelDepth depth);
99 } // namespace Itala
100 
101 #endif
Definition: DefectivePixel.h:23
Definition: IDefectDetection.h:29
virtual DefectivePixelList FindLeaky(uint64_t maxFound, float threshold)=0
Definition: IDisposable.h:27
virtual DefectivePixelList FindHotNCold(uint64_t maxFound, float threshold)=0
virtual void AccumulateGray(uint8_t *imageBuffer)=0
virtual void AccumulateDark(uint8_t *imageBuffer)=0
virtual void ResetDark()=0
virtual void ResetGray()=0