| 492 | */ |
| 493 | |
| 494 | void EvalFunction :: Print (ostream & ost) const |
| 495 | { |
| 496 | for (int i = 0; i < program.Size(); i++) |
| 497 | { |
| 498 | EVAL_TOKEN op = program[i].op; |
| 499 | ost << "Step " << i << ": " << (int)op << " = "; |
| 500 | switch (op) |
| 501 | { |
| 502 | case CONSTANT: ost << " const, val = " << program[i].operand.val; break; |
| 503 | case VARIABLE: ost << " input var " << program[i].operand.varnum; break; |
| 504 | case GLOBGENVAR: ost << " global var " << *program[i].operand.globgenvar; break; |
| 505 | case SIN: ost << " sin"; break; |
| 506 | case COS: ost << " cos"; break; |
| 507 | case TAN: ost << " tan"; break; |
| 508 | case ATAN: ost << " atan"; break; |
| 509 | case ATAN2: ost << " atan2"; break; |
| 510 | case EXP: ost << " exp"; break; |
| 511 | case LOG: ost << " log"; break; |
| 512 | case ABS: ost << " abs"; break; |
| 513 | case SIGN: ost << " sign"; break; |
| 514 | case SQRT: ost << " sqrt"; break; |
| 515 | case STEP: ost << " step"; break; |
| 516 | default: |
| 517 | ost << (char) op; |
| 518 | } |
| 519 | ost << " vdim = " << program[i].vecdim; |
| 520 | ost << endl; |
| 521 | } |
| 522 | } |
| 523 | |
| 524 | |
| 525 | |