Canola
0.8.D001
|
#include <test.h>
Public Member Functions | |
virtual | ~calculator_test () |
void | on_error_v (const char *fmt, va_list ap) |
void | run (void) |
Static Public Member Functions | |
static pointer | create (void) |
Protected Member Functions | |
void | derived_print (const display &value) |
void | derived_feed (void) |
void | derived_off (void) |
void | derived_update_display (const display &value) |
void | clock_tick_start_running (void) |
void | printer_timer_start_running (void) |
void | on_opcode (opcode_t op, const location::pointer &where) |
Private Member Functions | |
calculator_test () | |
calculator_test (const calculator_test &rhs) | |
calculator_test & | operator= (const calculator_test &rhs) |
The calculator_test class is used to represent a kind of calculator than can be used for automatic tests.
calculator_test::~calculator_test | ( | ) | [virtual] |
calculator_test::calculator_test | ( | ) | [private] |
calculator_test::calculator_test | ( | const calculator_test & | rhs | ) | [private] |
The copy constructor. Do not use.
rhs | The right hand side of the initialization. |
void calculator_test::clock_tick_start_running | ( | void | ) | [protected, virtual] |
The clock_tick_start_running method is called by the calculator to inform the derived class that it should kick off a clock tick idle handler. This will happen when opcode_extended_start is seen, for example. Derived classes should not assume when clocks stop and start, instend they will be explicitly informed via this method.
Implements calculator.
calculator::pointer calculator_test::create | ( | void | ) | [static] |
void calculator_test::derived_feed | ( | void | ) | [protected, virtual] |
The derived_feed method is used to implement the FD opcode, in the cases where it is valid.
Implements calculator.
void calculator_test::derived_off | ( | void | ) | [protected, virtual] |
The derived_off method is used to implement the OFF key.
Implements calculator.
void calculator_test::derived_print | ( | const display & | value | ) | [protected, virtual] |
The derived_print method is used to implement the PRINT opcode, in the cases where it is valid.
value | The value to be printed. |
Implements calculator.
void calculator_test::derived_update_display | ( | const display & | value | ) | [protected, virtual] |
The derived_update_display method is used when interpreting opcodes to indicate that the display needs to be updated to track the calculator's internal state.
value | The value to be displayed by the calculator display. |
Implements calculator.
void calculator_test::on_error_v | ( | const char * | fmt, |
va_list | ap | ||
) | [virtual] |
Implements calculator.
void calculator_test::on_opcode | ( | opcode_t | op, |
const location::pointer & | where | ||
) | [protected, virtual] |
The on_opcode method is used to process a key that corresponds to an opcode. This is most of the keys on the keyboard, but none of the controls above the keys.
The actual interpretation of the key depends on several different state paramaters withing the calculator, including: operation mode (LRN, OPE, etc) whether there is a tilde key pending, etc.
op | The opcode to be processed |
where | The source code location of the opcode (or NULL if not available) |
Reimplemented from calculator.
calculator_test& calculator_test::operator= | ( | const calculator_test & | rhs | ) | [private] |
The assignment operator. Do not use.
rhs | The right hand side of the assignment. |
void calculator_test::printer_timer_start_running | ( | void | ) | [protected, virtual] |
The printer_timer_start_running method is called by the calculator to inform the derived class that it should kick off a printer delay 420ms timer. This will happen when opcode_print or opcode_feed opcode is seen. Derived classes should not assume when printer delays stop and start, instend they will be explicitly informed via this method.
Implements calculator.
void calculator_test::run | ( | void | ) | [virtual] |
The run method is used to run the calculator, from interactive input, via the GUI, or equivalent.
Implements calculator.