FLImaging 7.3.3.3
FLImageDisplayUtilities.h
1#pragma once
2#include "FLPoint.h"
3
9
11namespace FLImaging
12{
14 namespace Foundation
15 {
56 struct FL_EXPORT sBufferFormat
57 {
58 sBufferFormat();
59 sBufferFormat(bool _bAlignToDword, bool _bBGR, bool _bBottomUp);
60 bool bAlignToDword;
61 bool bBGR;
62 bool bBottomUp;
63 };
64
65 typedef struct sBufferFormat SBufferFormat;
66
77 {
78 public:
87
88 static CFLImageDisplayUtilities* GetObject();
89 static bool Initialize();
90 static bool IsInitialized();
91
101 static uint8_t* GetFloatTable();
102
112 static uint32_t* GetIntensitySpectrumTable();
113
137 static uint32_t* GetSegmentationColorTable();
138
166 static int64_t GetAlignedRowStrideBytes(int64_t i64Width, int64_t i64Channel);
167
183 static const CResult GetRangeOfFloatImage(const Base::CFLImage* pFliSrc,
184 double& f64MinVal,
185 double& f64MaxVal);
239 static const CResult ConvertFLImageToBuffer(const Base::CFLImage* pFliSrc,
240 uint8_t* pDstBuffer,
241 int64_t i64DstWidth,
242 int64_t i64DstHeight,
243 const Foundation::CFLPoint<double>* pFlpOffset = nullptr,
244 double f64ScaleX = 1.,
245 double f64ScaleY = 1.,
246 double f64MinVal = 0.,
247 double f64MaxVal = 1.,
248 bool bSegmentationWithColor = false,
249 bool bReductionInterpolation = false,
250 const SBufferFormat& sFormat = SBufferFormat());
251
252 static const CResult ConvertFLImageToBuffer(const Base::CFLImage& fliSrc,
253 uint8_t* pDstBuffer,
254 int64_t i64DstWidth,
255 int64_t i64DstHeight,
256 const Foundation::CFLPoint<double>* pFlpOffset = nullptr,
257 double f64ScaleX = 1.,
258 double f64ScaleY = 1.,
259 double f64MinVal = 0.,
260 double f64MaxVal = 1.,
261 bool bSegmentationWithColor = false,
262 bool bReductionInterpolation = false,
263 const SBufferFormat& sFormat = SBufferFormat());
264
265
266 protected:
267 volatile bool m_bInitialized;
268 };
269 }
270}
FLIMaging's image class.
Definition FLImage.h:35
FLImaging module execution result object.
Definition ResultsDef.h:1676
static uint32_t * GetIntensitySpectrumTable()
Retrieve the color spectrum lookup table used for visualizing intensity values.
static const CResult ConvertFLImageToBuffer(const Base::CFLImage *pFliSrc, uint8_t *pDstBuffer, int64_t i64DstWidth, int64_t i64DstHeight, const Foundation::CFLPoint< double > *pFlpOffset=nullptr, double f64ScaleX=1., double f64ScaleY=1., double f64MinVal=0., double f64MaxVal=1., bool bSegmentationWithColor=false, bool bReductionInterpolation=false, const SBufferFormat &sFormat=SBufferFormat())
Converts a CFLImage into a display-ready pixel buffer.
static int64_t GetAlignedRowStrideBytes(int64_t i64Width, int64_t i64Channel)
Computes the byte stride (row size in bytes) for an image row, applying 4-byte (DWORD) alignment as u...
static uint32_t * GetSegmentationColorTable()
Returns the predefined segmentation-color lookup table.
static const CResult GetRangeOfFloatImage(const Base::CFLImage *pFliSrc, double &f64MinVal, double &f64MaxVal)
Compute the minimum and maximum pixel values of a floating-point image.
static uint8_t * GetFloatTable()
Retrieve the lookup table used to map floating-point pixel values (0.0–1.0) to 8-bit intensity.
A class representing a point.
Definition FLPoint.h:24
Definition AlgorithmBase.h:16
Specifies the output buffer layout for displaying or exporting an FLImage.
Definition FLImageDisplayUtilities.h:57