An interface for writing analog output, like for addressing a whole subdevice in comedi. More...
#include <rtt/dev/AnalogOutInterface.hpp>
Public Types | |
enum | AnalogReference { Ground = 0, Common, Differential, Other } |
This enum can be used to configure the arefSet() function. More... | |
Public Member Functions | |
AnalogOutInterface () | |
Create a not nameserved AnalogOutInterface instance. | |
AnalogOutInterface (const std::string &name) | |
Create a nameserved AnalogOutInterface. | |
virtual void | rangeSet (unsigned int chan, unsigned int range)=0 |
Set the range of a particular channel. | |
virtual void | arefSet (unsigned int chan, unsigned int aref)=0 |
Set the analog reference of a particular channel. | |
virtual int | rawWrite (unsigned int chan, int value)=0 |
Write a raw value to channel chan. | |
virtual int | rawRead (unsigned int chan, int &value)=0 |
Read the current raw value from channel chan. | |
virtual unsigned int | rawRange () const =0 |
Returns the absolute raw range (e.g. | |
virtual int | write (unsigned int chan, double value)=0 |
Write a MU value to channel chan. | |
virtual int | read (unsigned int chan, double &value)=0 |
Read the current MU value from channel chan. | |
virtual double | lowest (unsigned int chan) const =0 |
Returns the current lowest measurable input expressed in MU's for a given channel. | |
virtual double | highest (unsigned int chan) const =0 |
Returns the highest measurable input expressed in MU's for a given channel. | |
virtual double | resolution (unsigned int chan) const =0 |
Resolution is expressed in bits / MU. | |
virtual unsigned int | nbOfChannels () const =0 |
Returns the total number of channels. | |
unsigned int | binaryRange () const |
Returns the binary range (e.g. | |
int | binaryLowest () const |
Returns the binary lowest value. | |
int | binaryHighest () const |
Returns the binary highest value. | |
Static Public Attributes | |
static NameServer < AnalogOutInterface * > | nameserver |
The NameServer for this interface. |
An interface for writing analog output, like for addressing a whole subdevice in comedi.
Measurement Unit (MU) : Unit of what is actually read on the analog channel (e.g. Volt)
Definition at line 67 of file AnalogOutInterface.hpp.
This enum can be used to configure the arefSet() function.
Common |
Reference to ground. |
Differential |
Common reference. |
Other |
Differential reference. Undefined |
Definition at line 76 of file AnalogOutInterface.hpp.
RTT::AnalogOutInterface::AnalogOutInterface | ( | const std::string & | name | ) | [inline] |
Create a nameserved AnalogOutInterface.
When name is not "" and unique, it can be retrieved using the AnalogOutInterface::nameserver.
Definition at line 92 of file AnalogOutInterface.hpp.
virtual void RTT::AnalogOutInterface::arefSet | ( | unsigned int | chan, | |
unsigned int | aref | |||
) | [pure virtual] |
Set the analog reference of a particular channel.
We took (for now) the comedi API for this, where every aref (eg. Analog reference set to ground (aka AREF_GROUND) corresponds to an unsigned int.
int RTT::AnalogOutInterface::binaryHighest | ( | ) | const [inline] |
Returns the binary highest value.
Definition at line 184 of file AnalogOutInterface.hpp.
int RTT::AnalogOutInterface::binaryLowest | ( | ) | const [inline] |
Returns the binary lowest value.
Definition at line 178 of file AnalogOutInterface.hpp.
unsigned int RTT::AnalogOutInterface::binaryRange | ( | ) | const [inline] |
Returns the binary range (e.g.
12bits DA -> 4096)
Definition at line 172 of file AnalogOutInterface.hpp.
virtual void RTT::AnalogOutInterface::rangeSet | ( | unsigned int | chan, | |
unsigned int | range | |||
) | [pure virtual] |
Set the range of a particular channel.
We took (for now) the comedi API for this, where every range (eg. -5/+5 V) corresponds to an unsigned int. You should provide a mapping from that int to a particular range in your driver documentation
virtual unsigned int RTT::AnalogOutInterface::rawRange | ( | ) | const [pure virtual] |
Returns the absolute raw range (e.g.
12bits DA -> 4096)
virtual int RTT::AnalogOutInterface::rawWrite | ( | unsigned int | chan, | |
int | value | |||
) | [pure virtual] |
Write a raw value to channel chan.
virtual int RTT::AnalogOutInterface::write | ( | unsigned int | chan, | |
double | value | |||
) | [pure virtual] |
Write a MU value to channel chan.
The NameServer for this interface.
Definition at line 190 of file AnalogOutInterface.hpp.