52 #ifndef __PCL_ICCProfileTransformation_h
53 #define __PCL_ICCProfileTransformation_h
67 #ifdef __PCL_BUILDING_PIXINSIGHT_APPLICATION
101 using rendering_intent = ICCRenderingIntent::value_type;
124 , m_transformation( x.m_transformation )
125 , m_profiles( std::move( x.m_profiles ) )
126 , m_intent( x.m_intent )
127 , m_proofingIntent( x.m_proofingIntent )
128 , m_blackPointCompensation( x.m_blackPointCompensation )
129 , m_forceFloatingPoint( x.m_forceFloatingPoint )
130 , m_highResolutionCLUT( x.m_highResolutionCLUT )
131 , m_lowResolutionCLUT( x.m_lowResolutionCLUT )
132 , m_proofingTransformation( x.m_proofingTransformation )
133 , m_gamutCheck( x.m_gamutCheck )
134 , m_srcRGB( x.m_srcRGB )
135 , m_dstRGB( x.m_dstRGB )
136 , m_floatingPoint( x.m_floatingPoint )
138 x.m_transformation =
nullptr;
146 (void)ImageTransformation::operator =( x );
147 (void)ParallelProcess::operator =( x );
148 m_transformation = x.m_transformation;
149 m_profiles = std::move( x.m_profiles );
150 m_intent = x.m_intent;
151 m_proofingIntent = x.m_proofingIntent;
152 m_blackPointCompensation = x.m_blackPointCompensation;
153 m_forceFloatingPoint = x.m_forceFloatingPoint;
154 m_highResolutionCLUT = x.m_highResolutionCLUT;
155 m_lowResolutionCLUT = x.m_lowResolutionCLUT;
156 m_proofingTransformation = x.m_proofingTransformation;
157 m_gamutCheck = x.m_gamutCheck;
158 m_srcRGB = x.m_srcRGB;
159 m_dstRGB = x.m_dstRGB;
160 m_floatingPoint = x.m_floatingPoint;
161 x.m_transformation =
nullptr;
213 return m_transformation !=
nullptr;
241 CloseTransformation();
251 return m_blackPointCompensation;
263 CloseTransformation();
264 m_blackPointCompensation = enable;
276 EnableBlackPointCompensation( !disable );
291 return m_forceFloatingPoint;
300 CloseTransformation();
301 m_forceFloatingPoint = force;
313 ForceFloatingPointTransformation( !relax );
327 return m_highResolutionCLUT;
336 CloseTransformation();
337 if ( (m_highResolutionCLUT = enable) ==
true )
338 m_lowResolutionCLUT =
false;
350 EnableHighResolutionCLUT( !disable );
364 return m_lowResolutionCLUT;
373 CloseTransformation();
374 if ( (m_lowResolutionCLUT = enable) ==
true )
375 m_highResolutionCLUT =
false;
387 EnableLowResolutionCLUT( !disable );
395 return m_proofingTransformation;
408 CreateTransformation( m_forceFloatingPoint );
419 transformation_handle Handle()
const
421 return m_transformation;
455 mutable transformation_handle m_transformation =
nullptr;
461 profile_list m_profiles;
462 rendering_intent m_intent = ICCRenderingIntent::Perceptual;
463 rendering_intent m_proofingIntent = ICCRenderingIntent::AbsoluteColorimetric;
464 bool m_blackPointCompensation =
false;
465 bool m_forceFloatingPoint =
false;
466 bool m_highResolutionCLUT =
true;
467 bool m_lowResolutionCLUT =
false;
468 bool m_proofingTransformation =
false;
469 bool m_gamutCheck =
false;
477 mutable bool m_srcRGB =
false;
478 mutable bool m_dstRGB =
false;
484 mutable bool m_floatingPoint =
false;
491 void CreateTransformation(
bool )
const;
492 void CloseTransformation()
const;
539 m_proofingTransformation =
true;
631 CloseTransformation();
632 m_proofingIntent = i;
651 CloseTransformation();
652 m_gamutCheck = enable;
660 EnableGamutCheck( !disable );
Implements a generic, two-dimensional, shared or local image.
A high-level interface to ICC color profiles.
A process using multiple concurrent execution threads.