MCPcopy Create free account
hub / github.com/AcademySoftwareFoundation/OpenColorIO / CreateOpVecFromOpData

Function CreateOpVecFromOpData

src/OpenColorIO/Op.cpp:491–620  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

489}
490
491void CreateOpVecFromOpData(OpRcPtrVec & ops,
492 const ConstOpDataRcPtr & opData,
493 TransformDirection dir)
494{
495 switch (opData->getType())
496 {
497 case OpData::CDLType:
498 {
499 auto cdlSrc = std::dynamic_pointer_cast<const CDLOpData>(opData);
500 auto cdl = std::make_shared<CDLOpData>(*cdlSrc);
501 CreateCDLOp(ops, cdl, dir);
502 break;
503 }
504
505 case OpData::ExponentType:
506 {
507 auto expSrc = std::dynamic_pointer_cast<const ExponentOpData>(opData);
508 auto exp = std::make_shared<ExponentOpData>(*expSrc);
509 CreateExponentOp(ops, exp, dir);
510 break;
511 }
512
513 case OpData::ExposureContrastType:
514 {
515 auto ecSrc = std::dynamic_pointer_cast<const ExposureContrastOpData>(opData);
516 auto ec = ecSrc->clone();
517 CreateExposureContrastOp(ops, ec, dir);
518 break;
519 }
520
521 case OpData::FixedFunctionType:
522 {
523 auto ffSrc = std::dynamic_pointer_cast<const FixedFunctionOpData>(opData);
524 auto ff = std::make_shared<FixedFunctionOpData>(*ffSrc);
525 CreateFixedFunctionOp(ops, ff, dir);
526 break;
527 }
528
529 case OpData::GammaType:
530 {
531 auto gammaSrc = std::dynamic_pointer_cast<const GammaOpData>(opData);
532 auto gamma = std::make_shared<GammaOpData>(*gammaSrc);
533 CreateGammaOp(ops, gamma, dir);
534 break;
535 }
536
537 case OpData::GradingPrimaryType:
538 {
539 auto primarySrc = std::dynamic_pointer_cast<const GradingPrimaryOpData>(opData);
540 auto primary = std::make_shared<GradingPrimaryOpData>(*primarySrc);
541 CreateGradingPrimaryOp(ops, primary, dir);
542 break;
543 }
544
545 case OpData::GradingRGBCurveType:
546 {
547 auto rgbSrc = std::dynamic_pointer_cast<const GradingRGBCurveOpData>(opData);
548 auto rgb = std::make_shared<GradingRGBCurveOpData>(*rgbSrc);

Callers 3

getSimplerReplacementMethod · 0.85
invertMethod · 0.85
BuildOpFunction · 0.85

Calls 15

CreateCDLOpFunction · 0.85
CreateExponentOpFunction · 0.85
CreateExposureContrastOpFunction · 0.85
CreateFixedFunctionOpFunction · 0.85
CreateGammaOpFunction · 0.85
CreateGradingPrimaryOpFunction · 0.85
CreateGradingRGBCurveOpFunction · 0.85
CreateGradingHueCurveOpFunction · 0.85
CreateGradingToneOpFunction · 0.85
CreateLogOpFunction · 0.85
CreateLut1DOpFunction · 0.85
CreateLut3DOpFunction · 0.85

Tested by

no test coverage detected