26#ifndef NIDAS_DYNLD_RAF_DSMARINCSENSOR_H
27#define NIDAS_DYNLD_RAF_DSMARINCSENSOR_H
48namespace nidas {
namespace dynld {
namespace raf {
71const float RAD_DEG = 180.0 / 3.14159265358979;
81 if ( x->getRate() > y->getRate() )
return true;
82 if ( x->getRate() < y->getRate() )
return false;
83 if ( x->getId() < y->getId() )
return true;
119 void open(
int flags);
139 bool process(
const Sample*, std::list<const Sample*>& result);
#define NLABELS
Definition DSMArincSensor.h:46
DSMSensor provides the basic support for reading, processing and distributing samples from a sensor a...
Definition DSMSensor.h:88
An interface to an IO device.
Definition IODevice.h:42
A scanner of sample data.
Definition SampleScanner.h:74
Class describing a group of variables that are sampled and handled together.
Definition SampleTag.h:88
Interface to a data sample.
Definition Sample.h:190
A sensor connected to an ARINC port.
Definition DSMArincSensor.h:92
void printStatus(std::ostream &ostr)
Display some status information gathered by the driver.
Definition DSMArincSensor.cc:466
bool process(const Sample *, std::list< const Sample * > &result)
Process a raw sample, which in this case means create a list of samples with each sample containing a...
Definition DSMArincSensor.cc:251
unsigned int Speed()
Definition DSMArincSensor.h:168
IODevice * buildIODevice()
Definition DSMArincSensor.cc:107
int _processed[NLABELS]
A list of which samples are processed.
Definition DSMArincSensor.h:178
void close()
This closes the associated device.
Definition DSMArincSensor.cc:165
void init()
Perform any initialization necessary for process method.
Definition DSMArincSensor.cc:173
virtual bool processAlta(const dsm_time_t, unsigned char *, int, std::list< const Sample * > &result)
Definition DSMArincSensor.cc:357
void registerWithUDPArincSensor()
If this is the Alta UDP setup, then register with that sensor.
Definition DSMArincSensor.cc:222
std::map< dsm_sample_id_t, TimetagAdjuster * > _ttadjusters
Definition DSMArincSensor.h:191
std::map< dsm_sample_id_t, VariableConverter * > _converters
Definition DSMArincSensor.h:189
void fromDOMElement(const xercesc::DOMElement *)
Extract the ARINC configuration elements from the XML header.
Definition DSMArincSensor.cc:495
unsigned int _speed
channel configuration
Definition DSMArincSensor.h:186
void open(int flags)
This opens the associated device.
Definition DSMArincSensor.cc:118
int getInt32TimeTagUsecs() const
Definition DSMArincSensor.h:163
bool _altaEnetDevice
Definition DSMArincSensor.h:181
virtual double processLabel(const int data, sampleType *stype)=0
This contains a switch case for processing all labels.
unsigned int _parity
Definition DSMArincSensor.h:187
SampleScanner * buildSampleScanner()
Definition DSMArincSensor.cc:113
DSMArincSensor()
No arg constructor.
Definition DSMArincSensor.cc:74
int _observedLabelCnt[NLABELS]
Definition DSMArincSensor.h:179
~DSMArincSensor()
Definition DSMArincSensor.cc:85
This is sorts a list of Sample tags by rate (highest first) then by label.
Definition DSMArincSensor.h:78
bool operator()(const SampleTag *x, const SampleTag *y) const
Definition DSMArincSensor.h:80
The essential core classes of nidas.
Definition A2DConverter.h:31
sampleType
Definition sample_type_traits.h:30
long long dsm_time_t
Posix time in microseconds, the number of non-leap microseconds since 1970 Jan 1 00:00 UTC.
Definition Sample.h:62
const float INHG_MBAR
Definition DSMArincSensor.h:53
const float FT_MTR
Definition DSMArincSensor.h:59
const float RAD_DEG
Definition DSMArincSensor.h:71
const float NM_MTR
Definition DSMArincSensor.h:56
const float G_MPS2
Definition DSMArincSensor.h:62
const float KTS_MS
Definition DSMArincSensor.h:65
const float FPM_MPS
Definition DSMArincSensor.h:68
Root namespace for the NCAR In-Situ Data Acquisition Software.
Definition A2DConverter.h:31
#define USECS_PER_MSEC
Definition types.h:115