 
 
 

| Public Member Functions | |
| ProductTransformation () | |
| virtual | ~ProductTransformation () | 
| virtual bool | doTransform (const RCP< ScalarExpr > &left, const RCP< ScalarExpr > &right, RCP< ScalarExpr > &rtn) const =0 | 
| Static Public Member Functions | |
| static bool & | optimizeFunctionDiffOps () | 
Definition at line 52 of file SundanceProductTransformation.hpp.
| ProductTransformation::ProductTransformation | ( | ) | 
Definition at line 41 of file SundanceProductTransformation.cpp.
| virtual Sundance::ProductTransformation::~ProductTransformation | ( | ) |  [inline, virtual] | 
Definition at line 59 of file SundanceProductTransformation.hpp.
| virtual bool Sundance::ProductTransformation::doTransform | ( | const RCP< ScalarExpr > & | left, | |
| const RCP< ScalarExpr > & | right, | |||
| RCP< ScalarExpr > & | rtn | |||
| ) | const  [pure virtual] | 
Test whether the transform is applicable in this case, and if it is, apply it. The return value is true is the transformation was applied, otherwise false. Returns by non-const reference the transformed expression.
Implemented in Sundance::ProductTransformationSequence, Sundance::RemoveZeroFromProduct, Sundance::RemoveOneFromProduct, Sundance::RemoveMinusOneFromProduct, Sundance::MultiplyConstants, Sundance::MoveConstantsToLeftOfProduct, Sundance::MoveUnaryMinusOutsideProduct, Sundance::AssociateHungryDiffOpWithOperand, Sundance::KillDiffOpOnConstant, Sundance::BringConstantOutsideDiffOp, Sundance::DistributeSumOfDiffOps, Sundance::ApplySimpleDiffOp, Sundance::RearrangeRightProductWithConstant, Sundance::RearrangeLeftProductWithConstant, and Sundance::TakeConstantUnderIntegralSign.
| static bool& Sundance::ProductTransformation::optimizeFunctionDiffOps | ( | ) |  [inline, static] | 
Definition at line 62 of file SundanceProductTransformation.hpp.
Referenced by Sundance::ApplySimpleDiffOp::doTransform().