ItalaApiC  1.3.3
Polarization.h
1 
2 /***********************************************************************************
3  *
4  * ItalaApi - Copyright (C) 2024 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_C_POLARITAZION_H
15 #define ITALA_API_C_POLARITAZION_H
16 
17 #include "ItalaApiC/Export.h"
18 #include "ItalaApiC/ItalaCDefs.h"
19 #include "PFNC/PFNC.h"
20 
21 #ifdef __cplusplus
22 extern "C" {
23 namespace ItalaC {
24 #endif
25 
44 ITALA_API_C ItalaError ExtractPolarComponent(H_IMAGE hImage, PolarComponent component,
45  PolarDemosaicingAlgorithm algorithm,
46  H_IMAGE* hComponent);
47 
59 ITALA_API_C ItalaError ExtractAllPolarComponents(H_IMAGE hImage,
60  PolarDemosaicingAlgorithm algorithm,
61  PolarComponents* componentsMono);
62 
75 ITALA_API_C ItalaError ExtractAllPolarComponentsColor(H_IMAGE hImage,
76  PolarDemosaicingAlgorithm algorithm,
77  PolarComponentsColor* componentsColor);
78 
87 ITALA_API_C ItalaError ComputeStokesS0(PolarComponents* polarComponents, H_IMAGE* hS0);
88 
97 ITALA_API_C ItalaError ComputeStokesS1(PolarComponents* polarComponents, H_IMAGE* hS1);
98 
107 ITALA_API_C ItalaError ComputeStokesS2(PolarComponents* polarComponents, H_IMAGE* hS2);
108 
119 ITALA_API_C ItalaError ComputeAllStokes(PolarComponents* polarComponents,
120  StokesVectors* stokesVectors);
121 
130 ITALA_API_C ItalaError ComputeAoLP(StokesVectors* stokesVectors, H_IMAGE* hImageAoLP);
131 
140 ITALA_API_C ItalaError ComputeDoLP(StokesVectors* stokesVectors, H_IMAGE* hImageDoLP);
141 
151 ITALA_API_C ItalaError ComputeIntensity(StokesVectors* stokesVectors,
152  PfncFormat rawImagePixelFormat, H_IMAGE* hIntensity);
153 
167 ITALA_API_C ItalaError InstantComputeAoLP(H_IMAGE hImage, PolarDemosaicingAlgorithm algorithm,
168  H_IMAGE* hImageAoLP);
169 
183 ITALA_API_C ItalaError InstantComputeDoLP(H_IMAGE hImage, PolarDemosaicingAlgorithm algorithm,
184  H_IMAGE* hImageDoLP);
185 
199 ITALA_API_C ItalaError InstantComputeIntensity(H_IMAGE hImage, PolarDemosaicingAlgorithm algorithm,
200  H_IMAGE* hIntensity);
201 
214 ITALA_API_C ItalaError ComputePolarQuadrantsImage(H_IMAGE hImage, H_IMAGE* hPolarQuadrants);
215 
217 #ifdef __cplusplus
218 }
219 }
220 #endif
221 
222 #endif
int32_t PolarDemosaicingAlgorithm
Definition: ItalaCDefs.h:211
ITALA_API_C ItalaError ExtractAllPolarComponentsColor(H_IMAGE hImage, PolarDemosaicingAlgorithm algorithm, PolarComponentsColor *componentsColor)
ITALA_API_C ItalaError ComputeDoLP(StokesVectors *stokesVectors, H_IMAGE *hImageDoLP)
ITALA_API_C ItalaError ExtractAllPolarComponents(H_IMAGE hImage, PolarDemosaicingAlgorithm algorithm, PolarComponents *componentsMono)
ITALA_API_C ItalaError InstantComputeDoLP(H_IMAGE hImage, PolarDemosaicingAlgorithm algorithm, H_IMAGE *hImageDoLP)
int32_t ItalaError
Definition: ItalaCDefs.h:80
Convenient POD structure used as container for ExtractAllPolarComponentsColor 's multi-result.
Definition: ItalaCDefs.h:228
ITALA_API_C ItalaError ComputeStokesS1(PolarComponents *polarComponents, H_IMAGE *hS1)
ITALA_API_C ItalaError InstantComputeAoLP(H_IMAGE hImage, PolarDemosaicingAlgorithm algorithm, H_IMAGE *hImageAoLP)
ITALA_API_C ItalaError ExtractPolarComponent(H_IMAGE hImage, PolarComponent component, PolarDemosaicingAlgorithm algorithm, H_IMAGE *hComponent)
ITALA_API_C ItalaError ComputeAllStokes(PolarComponents *polarComponents, StokesVectors *stokesVectors)
ITALA_API_C ItalaError ComputeAoLP(StokesVectors *stokesVectors, H_IMAGE *hImageAoLP)
ITALA_API_C ItalaError ComputeIntensity(StokesVectors *stokesVectors, PfncFormat rawImagePixelFormat, H_IMAGE *hIntensity)
ITALA_API_C ItalaError ComputeStokesS2(PolarComponents *polarComponents, H_IMAGE *hS2)
Convenient POD structure used as container for ComputeAllStokes 's multi-result.
Definition: ItalaCDefs.h:238
ITALA_API_C ItalaError ComputeStokesS0(PolarComponents *polarComponents, H_IMAGE *hS0)
ITALA_API_C ItalaError InstantComputeIntensity(H_IMAGE hImage, PolarDemosaicingAlgorithm algorithm, H_IMAGE *hIntensity)
int32_t PolarComponent
Definition: ItalaCDefs.h:189
Convenient POD structure used as container for ExtractAllPolarComponents 's multi-result.
Definition: ItalaCDefs.h:217
ITALA_API_C ItalaError ComputePolarQuadrantsImage(H_IMAGE hImage, H_IMAGE *hPolarQuadrants)