quantum[5]=(*pixels++);
quantum[6]=(*pixels++);
quantum[7]=(*pixels++);
- p=(double *) quantum;
- *pixel=(*p);
- *pixel-=quantum_info->minimum;
- *pixel*=quantum_info->scale;
- return(pixels);
- }
- quantum[7]=(*pixels++);
- quantum[6]=(*pixels++);
- quantum[5]=(*pixels++);
- quantum[4]=(*pixels++);
- quantum[3]=(*pixels++);
- quantum[2]=(*pixels++);
- quantum[1]=(*pixels++);
- quantum[0]=(*pixels++);
+ }
+ else
+ {
+ quantum[7]=(*pixels++);
+ quantum[6]=(*pixels++);
+ quantum[5]=(*pixels++);
+ quantum[4]=(*pixels++);
+ quantum[3]=(*pixels++);
+ quantum[2]=(*pixels++);
+ quantum[1]=(*pixels++);
+ quantum[0]=(*pixels++);
+ }
p=(double *) quantum;
*pixel=(*p);
*pixel-=quantum_info->minimum;
quantum[1]=(*pixels++);
quantum[2]=(*pixels++);
quantum[3]=(*pixels++);
- p=(float *) quantum;
- *pixel=(*p);
- *pixel-=quantum_info->minimum;
- *pixel*=(float) quantum_info->scale;
- return(pixels);
- }
- quantum[3]=(*pixels++);
- quantum[2]=(*pixels++);
- quantum[1]=(*pixels++);
- quantum[0]=(*pixels++);
+ }
+ else
+ {
+ quantum[3]=(*pixels++);
+ quantum[2]=(*pixels++);
+ quantum[1]=(*pixels++);
+ quantum[0]=(*pixels++);
+ }
p=(float *) quantum;
*pixel=(*p);
*pixel-=quantum_info->minimum;
*pixel*=(float) quantum_info->scale;
+ if (*pixel < FLT_MIN)
+ *pixel=FLT_MIN;
+ else
+ if (*pixel > FLT_MAX)
+ *pixel=FLT_MAX;
return(pixels);
}
typedef struct _QuantumInfo
QuantumInfo;
-static inline Quantum ClampToQuantum(const MagickRealType value)
+static inline Quantum ClampToQuantum(const MagickRealType quantum)
{
#if defined(MAGICKCORE_HDRI_SUPPORT)
- if (value < DBL_MIN)
- return((Quantum) DBL_MIN);
- if (value > DBL_MAX)
- return((Quantum) DBL_MAX);
- return((Quantum) value);
+ return((Quantum) quantum);
#else
- if (value <= 0.0f)
+ if (quantum <= 0.0f)
return((Quantum) 0);
if (value >= (MagickRealType) QuantumRange)
return(QuantumRange);
- return((Quantum) (value+0.5f));
+ return((Quantum) (quantum+0.5f));
#endif
}