Lines Matching defs:Curves
1196 if (Curve ->nSegments != 1) return cmsSigCurveType; // Only 1-segment curves can be saved as parametric
1197 if (Curve ->Segments[0].Type < 0) return cmsSigCurveType; // Only non-inverted curves
1198 if (Curve ->Segments[0].Type > 5) return cmsSigCurveType; // Only ICC parametric curves
1249 cmsSignalError(self->ContextID, cmsERROR_UNKNOWN_EXTENSION, "Multisegment or Inverted parametric curves cannot be written");
1689 // Usual case of identity curves
2416 // Read a set of curves from specific offset
2420 cmsToneCurve* Curves[cmsMAXCHANNELS];
2429 Curves[i] = NULL;
2433 Curves[i] = ReadEmbeddedCurve(self, io);
2434 if (Curves[i] == NULL) goto Error;
2439 Lin = cmsStageAllocToneCurves(self ->ContextID, nCurves, Curves);
2443 cmsFreeToneCurve(Curves[i]);
2453 // dimensional curves, a 3 by 3 matrix with offset terms, a set of one dimensional curves,
2454 // a multidimensional lookup table, and a set of one dimensional output curves.
2457 //("A" curves) -> (multidimensional lookup table - CLUT) -> ("M" curves) -> (matrix) -> ("B" curves).
2538 // Write a set of curves
2575 // Write a set of curves
2581 cmsToneCurve** Curves;
2585 Curves = _cmsStageGetPtrToCurveSet(mpe);
2592 if ((Curves[i] ->nSegments == 0)||
2593 ((Curves[i]->nSegments == 2) && (Curves[i] ->Segments[1].Type == 0)) )
2596 if (Curves[i] ->Segments[0].Type < 0)
2604 if (!Type_Curve_Write(self, io, Curves[i], 1)) return FALSE;
2608 if (!Type_ParametricCurve_Write(self, io, Curves[i], 1)) return FALSE;
3501 This type contains curves representing the under color removal and black
4161 _cmsStageToneCurvesData* Curves = (_cmsStageToneCurvesData*) Cargo;
4163 return WriteSegmentedCurve(io, Curves ->TheCurves[n]);
4175 _cmsStageToneCurvesData* Curves = (_cmsStageToneCurvesData*) mpe ->Data;
4179 // Write the header. Since those are curves, input and output channels are same
4184 mpe ->InputChannels, BaseOffset, Curves, WriteMPECurve)) return FALSE;
4627 cmsToneCurve** Curves;
4635 Curves = ( cmsToneCurve**) _cmsCalloc(self ->ContextID, 3, sizeof(cmsToneCurve*));
4636 if (Curves == NULL) return NULL;
4663 // Populate tone curves
4666 Curves[n] = cmsBuildTabulatedToneCurve16(self ->ContextID, nElems, NULL);
4667 if (Curves[n] == NULL) goto Error;
4679 Curves[n] ->Table16[i] = FROM_8_TO_16(v);
4685 if (!_cmsReadUInt16Array(io, nElems, Curves[n]->Table16)) goto Error;
4702 // Populate tone curves
4731 Curves[n] = cmsBuildParametricToneCurve(self ->ContextID, 5, Params);
4732 if (Curves[n] == NULL) goto Error;
4744 return (void*) Curves;
4749 cmsFreeToneCurveTriple(Curves);
4750 _cmsFree(self ->ContextID, Curves);
4761 cmsToneCurve** Curves = (cmsToneCurve**) Ptr;
4764 if (cmsGetToneCurveParametricType(Curves[0]) == 5 &&
4765 cmsGetToneCurveParametricType(Curves[1]) == 5 &&
4766 cmsGetToneCurveParametricType(Curves[2]) == 5) {
4775 v.Gamma = Curves[i] ->Segments[0].Params[0];
4776 v.Min = Curves[i] ->Segments[0].Params[5];
4777 v.Max = pow(Curves[i] ->Segments[0].Params[1], v.Gamma) + v.Min;
4796 cmsFloat32Number v = cmsEvalToneCurveFloat(Curves[i], (cmsFloat32Number) (j / 255.0));