Homepage | Demos | Overview | Downloads | Tutorials | Reference | Credits |
#include <CompareTrans.h>
Inheritance diagram for CompareTrans< T >:
You will need to specify an event mask which will be listened for. This event will then be listened for - each time it is received, CompareTrans will check the values for possible activation.
For example, if you want to transition when the IR sensor goes below, say 200, pass &state->sensors[IRDistOffset], CompareTrans::LT, 200, and EventBase(EventBase::sensorEGID,SensorSourceID::UpdatedSID,EventBase::statusETID) as the polling event. Or a timer event to just check at a certain interval.
If you pass a class as the templated type, only requires that < operator is defined for comparing inequality, == for equality, and a copy constructor (CompareTrans holds a protected copy of the value)
Passing NULL as the value to monitor will cause a transition on the first event received
Definition at line 25 of file CompareTrans.h.
Public Types | |
enum | Test_t { LT, GT, LTE, GTE, EQ, NE } |
use these values to sepecify what kind of comparison should be made to test for activation More... | |
Public Member Functions | |
CompareTrans (StateNode *source, StateNode *destination, const T *monitor, Test_t test, const T &value, const EventBase &poll) | |
constructor, see class notes for information | |
virtual void | enable () |
starts listening | |
virtual void | disable () |
stops listening | |
virtual void | processEvent (const EventBase &) |
don't care about the event, just a pulse to check the values | |
Protected Attributes | |
const T * | mon |
address of value to monitor | |
Test_t | tst |
test to make | |
T | val |
value to compare against | |
EventBase | poller |
event to listen to, when it comes, compare the values | |
Private Member Functions | |
CompareTrans (const CompareTrans &node) | |
don't call this | |
CompareTrans | operator= (const CompareTrans &node) |
don't call this |
|
use these values to sepecify what kind of comparison should be made to test for activation
Definition at line 28 of file CompareTrans.h. |
|
constructor, see class notes for information
Definition at line 38 of file CompareTrans.h. References CompareTrans< T >::mon, CompareTrans< T >::poller, CompareTrans< T >::tst, and CompareTrans< T >::val. |
|
don't call this
|
|
stops listening
Implements Transition. Definition at line 46 of file CompareTrans.h. References erouter, and EventRouter::forgetListener(). |
|
starts listening
Implements Transition. Definition at line 43 of file CompareTrans.h. References EventRouter::addListener(), erouter, and CompareTrans< T >::poller. |
|
don't call this
|
|
don't care about the event, just a pulse to check the values
Implements EventListener. Reimplemented in SmoothCompareTrans< T >. Definition at line 49 of file CompareTrans.h. References Transition::activate(), CompareTrans< T >::EQ, CompareTrans< T >::GT, CompareTrans< T >::GTE, CompareTrans< T >::LT, CompareTrans< T >::LTE, CompareTrans< T >::mon, CompareTrans< T >::NE, CompareTrans< T >::tst, and CompareTrans< T >::val. |
|
address of value to monitor
Definition at line 73 of file CompareTrans.h. |
|
event to listen to, when it comes, compare the values
Definition at line 76 of file CompareTrans.h. |
|
test to make
Definition at line 74 of file CompareTrans.h. |
|
value to compare against
Definition at line 75 of file CompareTrans.h. |
Tekkotsu v1.4 |
Generated Sat Jul 19 00:08:52 2003 by Doxygen 1.3.2 |