Hoyt's FORK of DemoIccMAX 2.1.17.hoyt
Documentation for Hoyt's FORK of DemoIccMAX
Loading...
Searching...
No Matches
CIccOpDefToLab Class Reference
+ Inheritance diagram for CIccOpDefToLab:
+ Collaboration diagram for CIccOpDefToLab:

Public Member Functions

virtual bool Exec (SIccCalcOp *op, SIccOpState &os)
 
- Public Member Functions inherited from IIccOpDef
virtual int ArgsPushed (CIccMpeCalculator *pCalc, SIccCalcOp &op)
 
virtual int ArgsUsed (CIccMpeCalculator *pCalc, SIccCalcOp &op)
 
virtual void Describe (SIccCalcOp &op, std::string &desc, int nVerboseness)
 
 IIccOpDef ()
 
virtual bool IsValid (CIccMpeCalculator *pCalc, SIccCalcOp &op)
 
virtual ~IIccOpDef ()
 

Detailed Description

Definition at line 1721 of file IccMpeCalc.cpp.

Member Function Documentation

◆ Exec()

virtual bool CIccOpDefToLab::Exec ( SIccCalcOp * op,
SIccOpState & os )
inlinevirtual

Reimplemented from IIccOpDef.

Definition at line 1724 of file IccMpeCalc.cpp.

1725 {
1726 int j, n = op->data.select.v1+1;
1727 int n2 = n+n;
1728 int tn = n*3;
1729 icFloatNumber a1, a2, a3;
1730 size_t ss = os.pStack->size();
1731 if (tn>(int)ss)
1732 return false;
1733 icFloatNumber *s = &(*os.pStack)[ss-tn];
1734 for (j=0; j<n; j++) {
1735 a1 = icCubeth(s[j]);
1736 a2 = icCubeth(s[j+n]);
1737 a3 = icCubeth(s[j+n2]);
1738
1739 s[j] = (icFloatNumber)(116.0 * a2 - 16.0);
1740 s[j+n] = (icFloatNumber)(500.0 * (a1 - a2));
1741 s[j+n2] = (icFloatNumber)(200.0 * (a2 - a3));
1742 }
1743 return true;
1744 }
float icFloatNumber
All floating point operations/variables in IccProfLib use the icFloatNumber data type.
Definition IccDefs.h:100
icFloatNumber icCubeth(icFloatNumber v)
Definition IccUtil.cpp:805
icUInt16Number v1
Definition IccMpeCalc.h:243
struct SIccCalcOp::@1::@2 select
union SIccCalcOp::@1 data
CIccFloatVector * pStack
Definition IccMpeCalc.h:275

References SIccCalcOp::data, icCubeth(), SIccOpState::pStack, SIccCalcOp::select, and SIccCalcOp::v1.

+ Here is the call graph for this function:

The documentation for this class was generated from the following file: