PostGIS 3.7.0dev-r@@SVN_REVISION@@
Loading...
Searching...
No Matches

◆ rt_pixtype_get_min_value()

double rt_pixtype_get_min_value ( rt_pixtype  pixtype)

Return minimum value possible for pixel type.

Parameters
pixtype: the pixel type to get minimum possible value for
Returns
the minimum possible value for the pixel type.

Definition at line 156 of file rt_pixel.c.

156 {
157 switch (pixtype) {
158 case PT_1BB: {
159 return (double) rt_util_clamp_to_1BB((double) CHAR_MIN);
160 }
161 case PT_2BUI: {
162 return 0;
163 }
164 case PT_4BUI: {
165 return 0;
166 }
167 case PT_8BUI: {
168 return 0;
169 }
170 case PT_8BSI: {
171 return (double) rt_util_clamp_to_8BSI((double) SCHAR_MIN);
172 }
173 case PT_16BSI: {
174 return (double) rt_util_clamp_to_16BSI((double) SHRT_MIN);
175 }
176 case PT_16BUI: {
177 return 0;
178 }
179 case PT_16BF: {
180 return (double)-POSTGIS_RT_16F_MAX;
181 }
182 case PT_32BSI: {
183 return (double)rt_util_clamp_to_32BSI((double)INT_MIN);
184 }
185 case PT_32BUI: {
186 return 0;
187 }
188 case PT_32BF: {
189 return (double) -FLT_MAX;
190 }
191 case PT_64BF: {
192 return (double) -DBL_MAX;
193 }
194 default: {
195 rterror("rt_pixtype_get_min_value: Unknown pixeltype %d", pixtype);
196 return (double) rt_util_clamp_to_8BUI((double) CHAR_MIN);
197 }
198 }
199}
void rterror(const char *fmt,...) __attribute__((format(printf
Wrappers used for reporting errors and info.
int8_t rt_util_clamp_to_8BSI(double value)
Definition rt_util.c:51
uint8_t rt_util_clamp_to_1BB(double value)
Definition rt_util.c:36
int32_t rt_util_clamp_to_32BSI(double value)
Definition rt_util.c:71
@ PT_32BUI
Definition librtcore.h:197
@ PT_16BF
Definition librtcore.h:198
@ PT_2BUI
Definition librtcore.h:190
@ PT_32BSI
Definition librtcore.h:196
@ PT_4BUI
Definition librtcore.h:191
@ PT_32BF
Definition librtcore.h:199
@ PT_1BB
Definition librtcore.h:189
@ PT_16BUI
Definition librtcore.h:195
@ PT_8BSI
Definition librtcore.h:192
@ PT_16BSI
Definition librtcore.h:194
@ PT_64BF
Definition librtcore.h:200
@ PT_8BUI
Definition librtcore.h:193
uint8_t rt_util_clamp_to_8BUI(double value)
Definition rt_util.c:56
int16_t rt_util_clamp_to_16BSI(double value)
Definition rt_util.c:61
#define POSTGIS_RT_16F_MAX
Definition librtcore.h:2254

References POSTGIS_RT_16F_MAX, PT_16BF, PT_16BSI, PT_16BUI, PT_1BB, PT_2BUI, PT_32BF, PT_32BSI, PT_32BUI, PT_4BUI, PT_64BF, PT_8BSI, PT_8BUI, rt_util_clamp_to_16BSI(), rt_util_clamp_to_1BB(), rt_util_clamp_to_32BSI(), rt_util_clamp_to_8BSI(), rt_util_clamp_to_8BUI(), and rterror().

Referenced by RASTER_mapAlgebra2(), RASTER_minPossibleValue(), RASTER_reclass_exact(), RASTER_union_transfn(), rt_band_corrected_clamped_value(), rt_band_get_min_value(), rt_band_get_nearest_pixel(), and test_pixtype_get_min_value().

Here is the call graph for this function:
Here is the caller graph for this function: