3#if defined __GNUC__ && !defined CVB_SHOW_WARNINGS
4# pragma GCC system_header
10#include "../namespace.hpp"
22typedef void* CVSMETADATA;
23typedef void* CVSINTERPOLATOR;
32 CVSFT_StringArray = 3,
34 CVSFT_IntegerArray = 5
45 CVSFI_HeaderOffset = 7,
47 CVSFI_WavelengthUnit = 9,
50const int CVSFI_NUMBER_OF_AVAILABLE_FIELDS = 11;
54 CVSVP_BandInterleavedByLine = 0,
55 CVSVP_BandSequential = 1,
56 CVSVP_BandInterleavedByPixel = 2
61 CVSCT_ContinuousCube = 0,
62 CVSCT_LinearNonOwningCube = 1,
67enum CVSNormalizationMethod
69 CVSNM_AverageReferences1 = 0
72enum CVSInterpolationMethod
89 CVSSO_CIE2006_2deg = 1,
90 CVSSO_CIE2006_10deg = 2,
91 CVSSO_CIE1964_10deg = 3,
92 CVSSO_CIE1931_2deg = 4
108CVB_DEF_CAPI(cvbres_t, CVSCreateMetaData, (CVSMETADATA& MetaData))
109CVB_DEF_CAPI(cvbres_t, CVSCubeSetMetaData, (CVCOMPOSITE ImageCube, CVSMETADATA MetaData))
110CVB_DEF_CAPI(cvbres_t, CVSCubeGetMetaData, (CVCOMPOSITE ImageCube, CVSMETADATA& MetaData))
112CVB_DEF_CAPI(cvbres_t, CVSMetaDataGetNumberOfFields, (CVSMETADATA MetaData,
size_t& NumberOfFields))
114CVB_DEF_CAPI(cvbres_t, CVSMetaDataGetFieldnameAsString, (CVSMETADATA MetaData, CVSField FieldEnum,
char* FieldName,
size_t& FieldNameSize))
115CVB_DEF_CAPI(cvbres_t, CVSMetaDataGetFieldnameAsStringW, (CVSMETADATA MetaData, CVSField FieldEnum,
wchar_t* FieldName,
size_t& FieldNameSize))
117inline cvbres_t _ppCVSMetaDataGetFieldnameAsStringTyped(CVSMETADATA MetaData, CVSField FieldEnum,
char* FieldName,
size_t& FieldNameSize)
119 return _ppCVSMetaDataGetFieldnameAsString(MetaData, FieldEnum, FieldName, FieldNameSize);
122inline cvbres_t _ppCVSMetaDataGetFieldnameAsStringTyped(CVSMETADATA MetaData, CVSField FieldEnum,
wchar_t* FieldName,
size_t& FieldNameSize)
124 return _ppCVSMetaDataGetFieldnameAsStringW(MetaData, FieldEnum, FieldName, FieldNameSize);
127CVB_DEF_CAPI(cvbres_t, CVSMetaDataIsFieldDefined, (CVSMETADATA MetaData, CVSField FieldEnum, cvbbool_t& IsDefined))
128CVB_DEF_CAPI(cvbres_t, CVSMetaDataGetFieldType, (CVSMETADATA MetaData, CVSField FieldEnum, CVSFieldType& Type))
130CVB_DEF_CAPI(cvbres_t, CVSMetaDataSetAsString, (CVSMETADATA MetaData, CVSField FieldEnum,
const char* Value))
131CVB_DEF_CAPI(cvbres_t, CVSMetaDataSetAsStringW, (CVSMETADATA MetaData, CVSField FieldEnum,
const wchar_t* Value))
133inline cvbres_t _ppCVSMetaDataSetAsStringTyped(CVSMETADATA MetaData, CVSField FieldEnum,
const char* Value)
135 return _ppCVSMetaDataSetAsString(MetaData, FieldEnum, Value);
138inline cvbres_t _ppCVSMetaDataSetAsStringTyped(CVSMETADATA MetaData, CVSField FieldEnum,
const wchar_t* Value)
140 return _ppCVSMetaDataSetAsStringW(MetaData, FieldEnum, Value);
143CVB_DEF_CAPI(cvbres_t, CVSMetaDataSetAsInteger, (CVSMETADATA MetaData, CVSField FieldEnum, cvbint64_t Value))
144CVB_DEF_CAPI(cvbres_t, CVSMetaDataSetAsFloat, (CVSMETADATA MetaData, CVSField FieldEnum,
double Value))
146CVB_DEF_CAPI(cvbres_t, CVSMetaDataAddToStringArray, (CVSMETADATA MetaData, CVSField FieldEnum,
const char*
String))
147CVB_DEF_CAPI(cvbres_t, CVSMetaDataAddToStringArrayW, (CVSMETADATA MetaData, CVSField FieldEnum,
const wchar_t*
String))
149inline cvbres_t _ppCVSMetaDataAddToStringArrayTyped(CVSMETADATA MetaData, CVSField FieldEnum,
const char*
String)
151 return _ppCVSMetaDataAddToStringArray(MetaData, FieldEnum,
String);
154inline cvbres_t _ppCVSMetaDataAddToStringArrayTyped(CVSMETADATA MetaData, CVSField FieldEnum,
const wchar_t*
String)
156 return _ppCVSMetaDataAddToStringArrayW(MetaData, FieldEnum,
String);
160CVB_DEF_CAPI(cvbres_t, CVSMetaDataAddToIntegerArray, (CVSMETADATA MetaData, CVSField FieldEnum, cvbint64_t Element))
161CVB_DEF_CAPI(cvbres_t, CVSMetaDataAddToFloatArray, (CVSMETADATA MetaData, CVSField FieldEnum,
double Element))
163CVB_DEF_CAPI(cvbres_t, CVSMetaDataClearField, (CVSMETADATA MetaData, CVSField FieldEnum))
165CVB_DEF_CAPI(cvbres_t, CVSMetaDataGetAsString, (CVSMETADATA MetaData, CVSField FieldEnum,
char* Value,
size_t& ValueSize))
166CVB_DEF_CAPI(cvbres_t, CVSMetaDataGetAsStringW, (CVSMETADATA MetaData, CVSField FieldEnum,
wchar_t* Value,
size_t& ValueSize))
168inline cvbres_t _ppCVSMetaDataGetAsStringTyped(CVSMETADATA MetaData, CVSField FieldEnum,
char* Value,
size_t& ValueSize)
170 return _ppCVSMetaDataGetAsString(MetaData, FieldEnum, Value, ValueSize);
173inline cvbres_t _ppCVSMetaDataGetAsStringTyped(CVSMETADATA MetaData, CVSField FieldEnum,
wchar_t* Value,
size_t& ValueSize)
175 return _ppCVSMetaDataGetAsStringW(MetaData, FieldEnum, Value, ValueSize);
178CVB_DEF_CAPI(cvbres_t, CVSMetaDataGetAsInteger, (CVSMETADATA MetaData, CVSField FieldEnum, cvbint64_t& Value))
179CVB_DEF_CAPI(cvbres_t, CVSMetaDataGetAsFloat, (CVSMETADATA MetaData, CVSField FieldEnum,
double& Value))
181CVB_DEF_CAPI(cvbres_t, CVSMetaDataGetAsStringArray, (CVSMETADATA MetaData, CVSField FieldEnum, cvbval_t ElementIndex,
char*
String,
size_t& StringLength))
182CVB_DEF_CAPI(cvbres_t, CVSMetaDataGetAsStringArrayW, (CVSMETADATA MetaData, CVSField FieldEnum, cvbval_t ElementIndex,
wchar_t*
String,
size_t& StringLength))
184inline cvbres_t _ppCVSMetaDataGetAsStringArrayTyped(CVSMETADATA MetaData, CVSField FieldEnum, cvbval_t ElementIndex,
char*
String,
size_t& StringLength)
186 return _ppCVSMetaDataGetAsStringArray(MetaData, FieldEnum, ElementIndex,
String, StringLength);
189inline cvbres_t _ppCVSMetaDataGetAsStringArrayTyped(CVSMETADATA MetaData, CVSField FieldEnum, cvbval_t ElementIndex,
wchar_t*
String,
size_t& StringLength)
191 return _ppCVSMetaDataGetAsStringArrayW(MetaData, FieldEnum, ElementIndex,
String, StringLength);
194CVB_DEF_CAPI(cvbres_t, CVSMetaDataGetAsIntegerArray, (CVSMETADATA MetaData, CVSField FieldEnum, cvbval_t ElementIndex, cvbint64_t& Element))
195CVB_DEF_CAPI(cvbres_t, CVSMetaDataGetAsFloatArray, (CVSMETADATA MetaData, CVSField FieldEnum, cvbval_t ElementIndex,
double& Element))
196CVB_DEF_CAPI(cvbres_t, CVSMetaDataGetArraySize, (CVSMETADATA MetaData, CVSField FieldEnum,
size_t& NumberOfElements))
198CVB_DEF_CAPI(cvbres_t, CVSCreateContinuousCube, (cvbdim_t NumberOfSamples, cvbdim_t NumberOfLines, cvbdim_t NumberOfBands, cvbdatatype_t DataType, CVSCubeEncoding BufferLayout, CVCOMPOSITE &ImageCube))
199CVB_DEF_CAPI(cvbres_t, CVSCreateStackedCube, (IMG ImageArray[],
size_t NumberOfImages, CVSCubeEncoding SourceInterleaveType, CVCOMPOSITE &ImageCube))
200CVB_DEF_CAPI(cvbres_t, CVSCreateDuplicatedContinuousCube, (CVCOMPOSITE ImageCubeIn, CVCOMPOSITE &ImageCubeOut))
201CVB_DEF_CAPI(cvbres_t, CVSCreateCubeFromPointer, (
void* pCubeMemory, cvbdim_t NumbersOfDimensions[], cvbdatatype_t DataType, intptr_t IncrementsOfDimensions[], PFFINALRELEASE ReleaseCallback,
void *pPrivate, CVCOMPOSITE &ImageCubeOut))
203CVB_DEF_CAPI(cvbres_t, CVSCubeGetSlice, (CVCOMPOSITE ImageCube, cvbdim_t PlaneIndex, cvbbool_t TargetMapped, IMG& ImageOut))
204CVB_DEF_CAPI(cvbres_t, CVSCubeGetBufferView, (CVCOMPOSITE ImageCube, IMG& BufferView))
205CVB_DEF_CAPI(cvbres_t, CVSCubeGetType, (CVCOMPOSITE ImageCube, CVSCubeType& CubeType))
206CVB_DEF_CAPI(cvbres_t, CVSCubeGetDatatype, (CVCOMPOSITE ImageCube, cvbdatatype_t& DataType))
207CVB_DEF_CAPI(cvbres_t, CVSCubeGetLinearAccess, (CVCOMPOSITE ImageCube,
void * &pBaseAddress, intptr_t& SampleInc, intptr_t& LineInc, intptr_t& BandInc))
209CVB_DEF_CAPI(cvbres_t, CVSCreateConvertedCube, (CVCOMPOSITE ImageCubeIn, CVSCubeEncoding TargetCubeEncoding, CVCOMPOSITE& ImageCubeOut))
210CVB_DEF_CAPI(cvbres_t, CVSCreateCroppedCube, (CVCOMPOSITE ImageCube,
const CVSCuboid &ClipBox, cvbbool_t TargetMapped, CVCOMPOSITE& ImageCubeOut))
211CVB_DEF_CAPI(cvbres_t, CVSCubeGetSpectrumAsInteger, (CVCOMPOSITE ImageCube, cvbdim_t SampleIndex, cvbdim_t LineIndex, cvbval_t SpectralPixelValues[],
size_t& NumberOfBands))
212CVB_DEF_CAPI(cvbres_t, CVSCubeGetSpectrumAsDouble, (CVCOMPOSITE ImageCube, cvbdim_t SampleIndex, cvbdim_t LineIndex,
double SpectralPixelValues[],
size_t& NumberOfBands))
214CVB_DEF_CAPI(cvbres_t, CVSCubeSwapSamplesAndLines, (CVCOMPOSITE ImageCubeIn, CVCOMPOSITE& ImageCubeOut))
216CVB_DEF_CAPI(cvbres_t, CVSCubeNormalize, (CVCOMPOSITE ImageCubeIn, CVCOMPOSITE WhiteReference, CVCOMPOSITE BlackReference, CVSNormalizationMethod NormalizationMethod, CVCOMPOSITE& ImageCubeOut))
218CVB_DEF_CAPI(cvbres_t, CVSCubeMultiplication, (CVCOMPOSITE ImageCube1, CVCOMPOSITE ImageCube2, cvbbool_t ClipResults, CVCOMPOSITE& ImageCubeOut))
219CVB_DEF_CAPI(cvbres_t, CVSCubeDivision, (CVCOMPOSITE Dividend, CVCOMPOSITE Divisor, CVCOMPOSITE& ImageCubeOut))
220CVB_DEF_CAPI(cvbres_t, CVSCubeAddition, (CVCOMPOSITE ImageCube1, CVCOMPOSITE ImageCube2, cvbbool_t ClipResults, CVCOMPOSITE& ImageCubeOut))
221CVB_DEF_CAPI(cvbres_t, CVSCubeSubtraction, (CVCOMPOSITE Minuend, CVCOMPOSITE Subtrahend, cvbbool_t ClipResults, CVCOMPOSITE& ImageCubeOut))
223CVB_DEF_CAPI(cvbres_t, CVSLoadEnviFile, (
const char *HeaderFileName,
const char *BinaryFileName, CVCOMPOSITE &ImageCubeOut))
224CVB_DEF_CAPI(cvbres_t, CVSLoadEnviFileW, (
const wchar_t *HeaderFileName,
const wchar_t *BinaryFileName, CVCOMPOSITE &ImageCubeOut))
226inline cvbres_t _ppCVSLoadEnviFileTyped(
const char *HeaderFileName,
const char *BinaryFileName, CVCOMPOSITE &ImageCubeOut)
228 return _ppCVSLoadEnviFile(HeaderFileName, BinaryFileName, ImageCubeOut);
231inline cvbres_t _ppCVSLoadEnviFileTyped(
const wchar_t *HeaderFileName,
const wchar_t *BinaryFileName, CVCOMPOSITE &ImageCubeOut)
233 return _ppCVSLoadEnviFileW(HeaderFileName, BinaryFileName, ImageCubeOut);
236CVB_DEF_CAPI(cvbres_t, CVSWriteEnviFile, (CVCOMPOSITE ImageCubeIn,
const char *HeaderFileName,
const char *BinaryFileName))
237CVB_DEF_CAPI(cvbres_t, CVSWriteEnviFileW, (CVCOMPOSITE ImageCubeIn,
const wchar_t *HeaderFileName,
const wchar_t *BinaryFileName))
239inline cvbres_t _ppCVSWriteEnviFileTyped(CVCOMPOSITE ImageCubeIn,
const char *HeaderFileName,
const char *BinaryFileName)
241 return _ppCVSWriteEnviFile(ImageCubeIn, HeaderFileName, BinaryFileName);
244inline cvbres_t _ppCVSWriteEnviFileTyped(CVCOMPOSITE ImageCubeIn,
const wchar_t *HeaderFileName,
const wchar_t *BinaryFileName)
246 return _ppCVSWriteEnviFileW(ImageCubeIn, HeaderFileName, BinaryFileName);
249CVB_DEF_CAPI(cvbres_t, CVSCreateInterpolator, (CVCOMPOSITE ImageCube, CVSStdObserver Observer, CVSStdIlluminant Illuminant, CVSInterpolationMethod Interpolation, CVSINTERPOLATOR& Interpolator))
250CVB_DEF_CAPI(cvbres_t, CVSInterpolatorGetObserver, (CVSINTERPOLATOR Interpolator, CVSStdObserver& Observer))
251CVB_DEF_CAPI(cvbres_t, CVSInterpolatorGetIlluminant, (CVSINTERPOLATOR Interpolator, CVSStdIlluminant& Illuminant))
252CVB_DEF_CAPI(cvbres_t, CVSInterpolatorGetWavelengths, (CVSINTERPOLATOR Interpolator,
double WavelengthArray[],
size_t& NumberOfWavelengths))
254CVB_DEF_CAPI(cvbres_t, CVSConvertCubeToXYZ, (CVCOMPOSITE ImageCube, CVSINTERPOLATOR Interpolator, IMG& ImageOut))
255CVB_DEF_CAPI(cvbres_t, CVSConvertCubeToLab, (CVCOMPOSITE ImageCube, CVSINTERPOLATOR Interpolator, IMG& ImageOut))
256CVB_DEF_CAPI(cvbres_t, CVSConvertXYZToLab, (IMG ImageIn, CVSINTERPOLATOR Interpolator, IMG& ImageOut))
257CVB_DEF_CAPI(cvbres_t, CVSConvertLabToRGB8, (IMG ImageIn, CVSINTERPOLATOR Interpolator, IMG& ImageOut))
Root namespace for the Image Manager interface.
Definition c_bayer_to_rgb.h:17
std::string String
String for wide characters or unicode characters.
Definition string.hpp:49