15 #include "analogNode.h" 16 #include "config_device.h" 17 #include "dataNodeTransmit.h" 29 AnalogNode(
ClientBase *client,
const string &device_name) :
32 _xy_output = define_output(
"xy", EventStoreVec2::get_class_type());
37 client->get_device(ClientAnalogDevice::get_class_type(), device_name);
41 <<
"Unable to open analog device " << device_name <<
"\n";
45 if (!device->is_of_type(ClientAnalogDevice::get_class_type())) {
47 <<
"Inappropriate device type " << device->get_type()
48 <<
" created; expected a ClientAnalogDevice.\n";
73 write(ostream &out,
int indent_level)
const {
74 DataNode::write(out, indent_level);
78 _analog->write_controls(out, indent_level + 2);
105 for (
int i = 0; i < max_outputs; i++) {
106 if (_outputs[i]._index >= 0 &&
107 _analog->is_control_known(_outputs[i]._index)) {
108 if (_outputs[i]._flip) {
109 out[i] = -_analog->get_control_state(_outputs[i]._index);
111 out[i] = _analog->get_control_state(_outputs[i]._index);
The fundamental type of node for the data graph.
An optional parameter associated with an event.
A handy class object for storing simple values (like integers or strings) passed along with an Event ...
void set_data(int index, const EventParameter &data)
Sets the data for the indicated parameter.
A device, attached to the ClientBase by a AnalogNode, that records the data from a single named analo...
An abstract base class for a family of client device interfaces–including trackers, buttons, dials, and other analog inputs.
This is a two-component point in space.
TypeHandle is the identifier used to differentiate C++ class types.
Encapsulates the data generated from (or sent into) any particular DataNode.
Any of a number of different devices that might be attached to a ClientBase, including trackers...
This object supervises the traversal of the data graph and the moving of data from one DataNode to it...