Relacs DAQ Library  0.9.8
Public Member Functions | Static Public Member Functions | Static Public Attributes | Friends | List of all members
OutData Class Reference

#include <outdata.h>

Inheritance diagram for OutData:
Inheritance graph
[legend]
Collaboration diagram for OutData:
Collaboration graph
[legend]

Public Member Functions

 OutData (void)
 
 OutData (int n, double stepsize)
 
 OutData (double duration, double stepsize)
 
template<typename R >
 OutData (const R *a, int n, double stepsize=1.0)
 
template<typename R >
 OutData (const vector< R > &a, double stepsize=1.0)
 
template<typename R >
 OutData (const Array< R > &a, double stepsize=1.0)
 
template<typename R >
 OutData (const SampleData< R > &sa)
 
 OutData (const OutData &od)
 
virtual ~OutData (void)
 
template<typename R >
const OutDataoperator= (const R &a)
 
template<typename R >
const OutDataoperator= (const SampleData< R > &a)
 
const OutDataoperator= (const OutData &od)
 
const OutDataoperator= (float x)
 
const OutDataoperator= (double x)
 
const OutDataoperator= (long double x)
 
const OutDataoperator= (signed char x)
 
const OutDataoperator= (unsigned char x)
 
const OutDataoperator= (signed int x)
 
const OutDataoperator= (unsigned int x)
 
const OutDataoperator= (signed long x)
 
const OutDataoperator= (unsigned long x)
 
const OutDataoperator+= (float x)
 
const OutDataoperator+= (double x)
 
const OutDataoperator+= (long double x)
 
const OutDataoperator+= (signed char x)
 
const OutDataoperator+= (unsigned char x)
 
const OutDataoperator+= (signed int x)
 
const OutDataoperator+= (unsigned int x)
 
const OutDataoperator+= (signed long x)
 
const OutDataoperator+= (unsigned long x)
 
const OutDataoperator-= (float x)
 
const OutDataoperator-= (double x)
 
const OutDataoperator-= (long double x)
 
const OutDataoperator-= (signed char x)
 
const OutDataoperator-= (unsigned char x)
 
const OutDataoperator-= (signed int x)
 
const OutDataoperator-= (unsigned int x)
 
const OutDataoperator-= (signed long x)
 
const OutDataoperator-= (unsigned long x)
 
const OutDataoperator*= (float x)
 
const OutDataoperator*= (double x)
 
const OutDataoperator*= (long double x)
 
const OutDataoperator*= (signed char x)
 
const OutDataoperator*= (unsigned char x)
 
const OutDataoperator*= (signed int x)
 
const OutDataoperator*= (unsigned int x)
 
const OutDataoperator*= (signed long x)
 
const OutDataoperator*= (unsigned long x)
 
const OutDataoperator/= (float x)
 
const OutDataoperator/= (double x)
 
const OutDataoperator/= (long double x)
 
const OutDataoperator/= (signed char x)
 
const OutDataoperator/= (unsigned char x)
 
const OutDataoperator/= (signed int x)
 
const OutDataoperator/= (unsigned int x)
 
const OutDataoperator/= (signed long x)
 
const OutDataoperator/= (unsigned long x)
 
const OutDataoperator+= (const OutData &od)
 
template<typename R >
OutDataassign (const R *a, int n, const double stepsize=1)
 
template<typename R >
OutDataassign (const R &a, const double stepsize=1)
 
template<typename R >
OutDataassign (const SampleData< R > &sa)
 
OutDataassign (const OutData &od)
 
template<typename R >
const OutDatacopy (R *a, int n, const float &val=0) const
 
template<typename R >
const OutDatacopy (R &a) const
 
const OutDatacopy (OutData &od) const
 
OutDataappend (const OutData &od, const string &name="")
 
OutDatarepeat (int n, const string &name="")
 
void clear (void)
 
string errorMessage (void) const
 
double sampleRate (void) const
 
void setSampleRate (double rate)
 
double sampleInterval (void) const
 
void setSampleInterval (double step)
 
int startSource (void) const
 
void setStartSource (int startsource)
 
double delay (void) const
 
void setDelay (double delay)
 
bool priority (void) const
 
void setPriority (const bool priority=true)
 
bool continuous (void) const
 
void setContinuous (bool continuous=true)
 
bool restart (void) const
 
void setRestart (bool restart=true)
 
int device (void) const
 
void setDevice (int device)
 
int channel (void) const
 
void setChannel (int channel)
 
void setChannel (int channel, int device)
 
int trace (void) const
 
int setTrace (int index)
 
string traceName (void) const
 
int setTraceName (const string &name)
 
void setTrace (int index, const string &name)
 
string ident (void) const
 
void setIdent (const string &ident)
 
const Options & description (void) const
 
Options & description (void)
 
void setDescription (const Options &description)
 
double requestedMin (void) const
 
double requestedMax (void) const
 
void request (double min, double max)
 
void setExtRef (void)
 
char * gainData (void) const
 
void setGainData (char *data)
 
double voltage (int index) const
 
double getVoltage (double val) const
 
double minVoltage (void) const
 
double maxVoltage (void) const
 
void setMinVoltage (double minv)
 
void setMaxVoltage (double maxv)
 
double scale (void) const
 
void setScale (double scale)
 
void multiplyScale (double fac)
 
string unit (void) const
 
void setUnit (const string &unit)
 
void setUnit (double scale, const string &unit)
 
double minValue (void) const
 
double maxValue (void) const
 
double intensity (void) const
 
void setIntensity (double intensity)
 
void setNoIntensity (void)
 
bool noIntensity (void) const
 
void mute (void)
 
bool muted (void) const
 
double carrierFreq (void) const
 
void setCarrierFreq (double carrierfreq)
 
double level (void) const
 
void setLevel (double level)
 
void setNoLevel (void)
 
bool noLevel (void) const
 
double duration (void) const
 
double totalDuration (void) const
 
double maxSampleRate (void)
 
void setMaxSampleRate (double maxrate)
 
double minSampleInterval (void)
 
void setMinSampleInterval (double minsample)
 
void setFixedSampleRate (double rate)
 
void setFixedSampleInterval (double interval)
 
bool fixedSampleRate (void) const
 
double bestSampleRate (double carrierfreq)
 
double bestSampleInterval (double carrierfreq)
 
void setBestSample (double carrierfreq)
 
void fixSample (void)
 
istream & load (istream &str, const string &filename)
 
OutDataload (const string &file, const string &filename="")
 
double maximize (double max=1.0)
 
double minmaximize (double max=1.0)
 
double fill (const OutData &am, double carrierfreq, const string &ident="")
 
void constWave (double value, const string &name="")
 
void constWave (double duration, double stepsize, double value, const string &name="")
 
void pulseWave (double duration, double stepsize, double value, double base, const string &name="")
 
void rectangleWave (double duration, double stepsize, double period, double width, double ramp, double ampl=1.0, const string &name="")
 
void sineWave (double duration, double stepsize, double freq, double phase=0.0, double ampl=1.0, double ramp=0.0, const string &name="")
 
void noiseWave (double duration, double stepsize, double cutofffreq, double stdev=1.0, unsigned long *seed=0, double ramp=0.0, const string &name="")
 
void bandNoiseWave (double duration, double stepsize, double cutofffreqlow, double cutofffreqhigh, double stdev=1.0, unsigned long *seed=0, double ramp=0.0, const string &name="")
 
void ouNoiseWave (double duration, double stepsize, double tau, double stdev=1.0, unsigned long *seed=0, double ramp=0.0, const string &name="")
 
void sweepWave (double duration, double stepsize, double startfreq, double endfreq, double ampl=1.0, double ramp=0.0, const string &name="")
 
void rampWave (double duration, double stepsize, double first, double last, const string &name="")
 
void sawUpWave (double duration, double stepsize, double period, double ramp, double ampl=1.0, const string &name="")
 
void sawDownWave (double duration, double stepsize, double period, double ramp, double ampl=1.0, const string &name="")
 
void triangleWave (double duration, double stepsize, double period, double ampl=1.0, const string &name="")
 
void alphaWave (double &duration, double stepsize, double period, double tau, double ampl=1.0, double delay=0.0, const string &name="")
 
int deviceIndex (void) const
 
void incrDeviceIndex (void)
 
float deviceValue (void)
 
int deviceDelay (void) const
 
void setDeviceDelay (int delay)
 
int deviceCount (void) const
 
void setDeviceCount (int count)
 
void incrDeviceCount (void)
 
bool deviceWriting (void) const
 
void deviceReset (int delay=0)
 
- Public Member Functions inherited from SampleData< float >
 SampleData (void)
 
 SampleData (int n, const float &val=0)
 
 SampleData (long n, const float &val=0)
 
 SampleData (int n, double offset, double stepsize, const float &val=0)
 
 SampleData (long n, double offset, double stepsize, const float &val=0)
 
 SampleData (double l, double r, double stepsize, const float &val=0)
 
 SampleData (const LinearRange &range, const float &val=0)
 
 SampleData (const R *a, int n, double offset=0, double stepsize=1)
 
 SampleData (const R *a, int n, const LinearRange &range)
 
 SampleData (const vector< R > &a, double offset=0, double stepsize=1)
 
 SampleData (const vector< R > &a, const LinearRange &range)
 
 SampleData (const Array< R > &a, double offset=0, double stepsize=1)
 
 SampleData (const Array< R > &a, const LinearRange &range)
 
 SampleData (const SampleData< R > &sa)
 
 SampleData (const SampleData< R > &sa, const LinearRange &range)
 
 SampleData (const SampleData< float > &sa)
 
virtual ~SampleData (void)
 
const SampleData< float > & operator= (const R &a)
 
const SampleData< float > & operator= (const SampleData< R > &a)
 
const SampleData< float > & operator= (const SampleData< float > &a)
 
const SampleData< float > & operator= (float x)
 
const SampleData< float > & operator= (double x)
 
const SampleData< float > & operator= (long double x)
 
const SampleData< float > & operator= (signed char x)
 
const SampleData< float > & operator= (unsigned char x)
 
const SampleData< float > & operator= (signed int x)
 
const SampleData< float > & operator= (unsigned int x)
 
const SampleData< float > & operator= (signed long x)
 
const SampleData< float > & operator= (unsigned long x)
 
const SampleData< float > & assign (const R *a, int n)
 
const SampleData< float > & assign (const R *a, int n, double offset, double stepsize=1)
 
const SampleData< float > & assign (const R &a)
 
const SampleData< float > & assign (const R &a, double offset, double stepsize=1)
 
const SampleData< float > & assign (const SampleData< R > &sa)
 
const SampleData< float > & assign (const SampleData< float > &sa)
 
const SampleData< float > & interpolate (const SampleData< R > &sa)
 
const SampleData< float > & interpolate (const SampleData< R > &sa, double stepsize)
 
const SampleData< float > & interpolate (const SampleData< R > &sa, double offset, double stepsize)
 
const SampleData< float > & interpolate (const SampleData< R > &sa, const LinearRange &range)
 
const SampleData< float > & interpolate (const Map< R > &ma)
 
const SampleData< float > & interpolate (const Map< R > &ma, const LinearRange &range)
 
float interpolate (double x) const
 
const SampleData< float > & smooth (const SampleData< R > &sa, int n)
 
const SampleData< float > & smooth (const SampleData< R > &sa, const ArrayD &weights, int nl)
 
SampleData< float > & whiteNoise (int n, double step, double cl, double cu, R &r=rnd)
 
SampleData< float > & whiteNoise (double l, double step, double cl, double cu, R &r=rnd)
 
SampleData< float > & ouNoise (int n, double step, double tau, R &r=rnd)
 
SampleData< float > & ouNoise (double l, double step, double tau, R &r=rnd)
 
const SampleData< float > & copy (R *a, int n, const float &val=0) const
 
const SampleData< float > & copy (R &a) const
 
const SampleData< float > & copy (SampleData< R > &sa) const
 
const SampleData< float > & copy (double x1, double x2, SampleData< R > &sa) const
 
const SampleData< float > & copy (double x1, double x2, Map< R > &m) const
 
const SampleData< float > & copy (double x1, double x2, Array< R > &a) const
 
const SampleData< float > & copy (double x1, double x2, vector< R > &v) const
 
const SampleData< float > & append (floata, int n=1)
 
const SampleData< float > & append (const R *a, int n)
 
const SampleData< float > & append (const R &a)
 
const SampleData< float > & append (const SampleData< R > &sa)
 
int size (void) const
 
bool empty (void) const
 
virtual int resize (int n, const float &val=0)
 
int resize (long n, const float &val=0)
 
int resize (int n, double offset, double stepsize, const float &val=0)
 
int resize (long n, double offset, double stepsize, const float &val=0)
 
int resize (double l, double r, double stepsize, const float &val=0)
 
int resize (const LinearRange &range, const float &val=0)
 
int capacity (void) const
 
virtual int reserve (int n)
 
virtual void free (int n=0)
 
double offset (void) const
 
void setOffset (double offset)
 
double stepsize (void) const
 
void setStepsize (double stepsize)
 
void scaleStepsize (double scale)
 
void setRange (double offset, double stepsize)
 
double length (void) const
 
void setLength (double l)
 
double rangeFront (void) const
 
double rangeBack (void) const
 
void setRangeBack (double val)
 
void shift (double val)
 
void scale (double scale)
 
double pos (int i) const
 
double interval (int indices) const
 
int index (double pos) const
 
int indices (double iv) const
 
bool contains (double pos) const
 
const float & operator[] (int i) const
 
float & operator[] (int i)
 
const float & operator[] (double x) const
 
float & operator[] (double x)
 
const float & at (int i) const
 
float & at (int i)
 
float operator() (double x) const
 
const float & front (void) const
 
float & front (void)
 
const float & back (void) const
 
float & back (void)
 
int push (const float &val)
 
float pop (void)
 
const float * data (void) const
 
float * data (void)
 
const Array< float > & array (void) const
 
Array< float > & array (void)
 
const LinearRangerange (void) const
 
LinearRangerange (void)
 
iterator begin (void)
 
const_iterator begin (void) const
 
iterator end (void)
 
const_iterator end (void) const
 
const_range_iterator rangeBegin (void) const
 
const_range_iterator rangeEnd (void) const
 
SampleData< float > & insert (int i, const float &yval)
 
iterator insert (iterator i, const float &yval)
 
SampleData< float > & erase (int i)
 
iterator erase (iterator i)
 
const SampleData< float > & operator+= (const R &x)
 
const SampleData< float > & operator+= (const SampleData< R > &x)
 
const SampleData< float > & operator+= (float x)
 
const SampleData< float > & operator+= (double x)
 
const SampleData< float > & operator+= (long double x)
 
const SampleData< float > & operator+= (signed char x)
 
const SampleData< float > & operator+= (unsigned char x)
 
const SampleData< float > & operator+= (signed int x)
 
const SampleData< float > & operator+= (unsigned int x)
 
const SampleData< float > & operator+= (signed long x)
 
const SampleData< float > & operator+= (unsigned long x)
 
const SampleData< float > & operator+= (const COT &x)
 
const SampleData< float > & operator+= (const SampleData< COT > &x)
 
const SampleData< float > & operator-= (const R &x)
 
const SampleData< float > & operator-= (const SampleData< R > &x)
 
const SampleData< float > & operator-= (float x)
 
const SampleData< float > & operator-= (double x)
 
const SampleData< float > & operator-= (long double x)
 
const SampleData< float > & operator-= (signed char x)
 
const SampleData< float > & operator-= (unsigned char x)
 
const SampleData< float > & operator-= (signed int x)
 
const SampleData< float > & operator-= (unsigned int x)
 
const SampleData< float > & operator-= (signed long x)
 
const SampleData< float > & operator-= (unsigned long x)
 
const SampleData< float > & operator-= (const COT &x)
 
const SampleData< float > & operator-= (const SampleData< COT > &x)
 
const SampleData< float > & operator*= (const R &x)
 
const SampleData< float > & operator*= (const SampleData< R > &x)
 
const SampleData< float > & operator*= (float x)
 
const SampleData< float > & operator*= (double x)
 
const SampleData< float > & operator*= (long double x)
 
const SampleData< float > & operator*= (signed char x)
 
const SampleData< float > & operator*= (unsigned char x)
 
const SampleData< float > & operator*= (signed int x)
 
const SampleData< float > & operator*= (unsigned int x)
 
const SampleData< float > & operator*= (signed long x)
 
const SampleData< float > & operator*= (unsigned long x)
 
const SampleData< float > & operator*= (const COT &x)
 
const SampleData< float > & operator*= (const SampleData< COT > &x)
 
const SampleData< float > & operator/= (const R &x)
 
const SampleData< float > & operator/= (const SampleData< R > &x)
 
const SampleData< float > & operator/= (float x)
 
const SampleData< float > & operator/= (double x)
 
const SampleData< float > & operator/= (long double x)
 
const SampleData< float > & operator/= (signed char x)
 
const SampleData< float > & operator/= (unsigned char x)
 
const SampleData< float > & operator/= (signed int x)
 
const SampleData< float > & operator/= (unsigned int x)
 
const SampleData< float > & operator/= (signed long x)
 
const SampleData< float > & operator/= (unsigned long x)
 
const SampleData< float > & operator/= (const COT &x)
 
const SampleData< float > & operator/= (const SampleData< COT > &x)
 
const SampleData< float > & operator%= (const R &x)
 
const SampleData< float > & operator%= (const SampleData< R > &x)
 
const SampleData< float > & operator%= (float x)
 
const SampleData< float > & operator%= (double x)
 
const SampleData< float > & operator%= (long double x)
 
const SampleData< float > & operator%= (signed char x)
 
const SampleData< float > & operator%= (unsigned char x)
 
const SampleData< float > & operator%= (signed int x)
 
const SampleData< float > & operator%= (unsigned int x)
 
const SampleData< float > & operator%= (signed long x)
 
const SampleData< float > & operator%= (unsigned long x)
 
const SampleData< float > & operator%= (const COT &x)
 
const SampleData< float > & operator%= (const SampleData< COT > &x)
 
SampleData< float > operator- (void)
 
SampleData< float > & identity (void)
 
SampleData< float > & sin (const LinearRange &r, double f)
 
SampleData< float > & sin (int n, double offset, double stepsize, double f)
 
SampleData< float > & sin (double l, double r, double stepsize, double f)
 
SampleData< float > & cos (const LinearRange &r, double f)
 
SampleData< float > & cos (int n, double offset, double stepsize, double f)
 
SampleData< float > & cos (double l, double r, double stepsize, double f)
 
SampleData< float > & sweep (const LinearRange &r, double startfreq, double endfreq)
 
SampleData< float > & sweep (int n, double offset, double stepsize, double startfreq, double endfreq)
 
SampleData< float > & sweep (double l, double r, double stepsize, double startfreq, double endfreq)
 
SampleData< float > & gauss (const LinearRange &r)
 
SampleData< float > & gauss (int n, double offset, double stepsize)
 
SampleData< float > & gauss (double l, double r, double stepsize)
 
SampleData< float > & gauss (const LinearRange &r, double s, double m=0.0)
 
SampleData< float > & gauss (int n, double offset, double stepsize, double s, double m=0.0)
 
SampleData< float > & gauss (double l, double r, double stepsize, double s, double m=0.0)
 
SampleData< float > & alpha (const LinearRange &r, double tau, double offs=0.0)
 
SampleData< float > & alpha (int n, double offset, double stepsize, double tau, double offs=0.0)
 
SampleData< float > & alpha (double l, double r, double stepsize, double tau, double offs=0.0)
 
SampleData< float > & line (const LinearRange &r, double abscissa, double slope)
 
SampleData< float > & line (int n, double offset, double stepsize, double abscissa, double slope)
 
SampleData< float > & line (double l, double r, double stepsize, double abscissa, double slope)
 
SampleData< float > & rectangle (const LinearRange &r, double period, double width, double ramp=0.0)
 
SampleData< float > & rectangle (int n, double offset, double stepsize, double period, double width, double ramp=0.0)
 
SampleData< float > & rectangle (double l, double r, double stepsize, double period, double width, double ramp=0.0)
 
SampleData< float > & sawUp (const LinearRange &r, double period, double ramp=0.0)
 
SampleData< float > & sawUp (int n, double offset, double stepsize, double period, double ramp=0.0)
 
SampleData< float > & sawUp (double l, double r, double stepsize, double period, double ramp=0.0)
 
SampleData< float > & sawDown (const LinearRange &r, double period, double ramp=0.0)
 
SampleData< float > & sawDown (int n, double offset, double stepsize, double period, double ramp=0.0)
 
SampleData< float > & sawDown (double l, double r, double stepsize, double period, double ramp=0.0)
 
SampleData< float > & triangle (const LinearRange &r, double period)
 
SampleData< float > & triangle (int n, double offset, double stepsize, double period)
 
SampleData< float > & triangle (double l, double r, double stepsize, double period)
 
SampleData< float > & rampUp (double x, int type=0)
 
SampleData< float > & rampDown (double x, int type=0)
 
SampleData< float > & ramp (double x, int type=0)
 
SampleData< float > & addHist (ForwardIter first, ForwardIter last)
 
SampleData< float > & addHist (const R &x)
 
SampleData< float > & hist (ForwardIter first, ForwardIter last)
 
SampleData< float > & hist (const R &x)
 
SampleData< float > & cumulative (const SampleData< R > &x)
 
SampleData< float > & freqFilter (const SampleData< TT > &g, bool rescale=true)
 
float min (double first, double last) const
 
int minIndex (double first, double last) const
 
int minIndex (float &min, double first, double last) const
 
float max (double first, double last) const
 
int maxIndex (double first, double last) const
 
int maxIndex (float &max, double first, double last) const
 
void minMax (float &min, float &max, double first, double last) const
 
void minMaxIndex (int &minindex, int &maxindex, double first, double last) const
 
void minMaxIndex (float &min, int &minindex, float &max, int &maxindex, double first, double last) const
 
numerical_traits< float >
::mean_type 
mean (double first, double last) const
 
numerical_traits< float >
::mean_type 
mean (typename numerical_traits< float >::variance_type &stdev, double first, double last) const
 
numerical_traits< float >
::variance_type 
variance (double first, double last) const
 
numerical_traits< float >
::variance_type 
varianceKnown (typename numerical_traits< float >::mean_type mean, double first, double last) const
 
numerical_traits< float >
::variance_type 
varianceFixed (typename numerical_traits< float >::mean_type fixedmean, double first, double last) const
 
numerical_traits< float >
::variance_type 
stdev (double first, double last) const
 
numerical_traits< float >
::variance_type 
stdevKnown (typename numerical_traits< float >::mean_type mean, double first, double last) const
 
numerical_traits< float >
::variance_type 
stdevFixed (typename numerical_traits< float >::mean_type fixedmean, double first, double last) const
 
numerical_traits< float >
::variance_type 
sem (double first, double last) const
 
numerical_traits< float >
::variance_type 
semKnown (typename numerical_traits< float >::mean_type mean, double first, double last) const
 
numerical_traits< float >
::variance_type 
semFixed (typename numerical_traits< float >::mean_type fixedmean, double first, double last) const
 
numerical_traits< float >
::variance_type 
absdev (double first, double last) const
 
numerical_traits< float >
::variance_type 
absdevKnown (typename numerical_traits< float >::mean_type mean, double first, double last) const
 
numerical_traits< float >
::variance_type 
rms (double first, double last) const
 
numerical_traits< float >
::variance_type 
skewness (double first, double last) const
 
numerical_traits< float >
::variance_type 
kurtosis (double first, double last) const
 
numerical_traits< float >
::mean_type 
sum (double first, double last) const
 
numerical_traits< float >
::mean_type 
integral (void) const
 
numerical_traits< float >
::mean_type 
integral (double first, double last) const
 
numerical_traits< float >
::variance_type 
squaredSum (double first, double last) const
 
numerical_traits< float >
::variance_type 
power (double first, double last) const
 
void troughs (const SampleData< TT > &x, EventData &events, double threshold)
 
void troughs (const SampleData< TT > &x, EventData &events, double &threshold, Check &check)
 
void rising (const SampleData< TT > &x, EventData &events, double threshold)
 
void rising (const SampleData< TT > &x, EventData &events, double &threshold, Check &check)
 
void falling (const SampleData< TT > &x, EventData &events, double threshold)
 
void falling (const SampleData< TT > &x, EventData &events, double &threshold, Check &check)
 
ostream & save (ostream &str, int width=10, int prec=5, const string &start="", const string &separator=" ") const
 
void save (const string &file, int width=10, int prec=5, const string &start="", const string &separator=" ") const
 
istream & load (istream &str, const string &stop="", string *line=0)
 
SampleData< float > & load (const string &file, const string &comment="#", const string &stop="")
 
- Public Member Functions inherited from Array< T >
 Array (void)
 
 Array (int n)
 
 Array (int n, const T &val)
 
 Array (const S *a, int n)
 
 Array (const T *a, int n)
 
 Array (const vector< S > &a, int first=0, int last=-1)
 
 Array (const Array< S > &a, int first=0, int last=-1)
 
 Array (const Array< T > &a)
 
 Array (const LinearRange &range)
 
virtual ~Array (void)
 
const Array< T > & operator= (const S &a)
 
const Array< T > & operator= (const LinearRange &range)
 
const Array< T > & operator= (const Array< T > &a)
 
const Array< T > & assign (const S *a, int n)
 
const Array< T > & assign (const T *a, int n)
 
const Array< T > & assign (const S &a)
 
const Array< T > & assign (const Array< T > &a)
 
const Array< T > & assign (const Array< T > &a, int first, int last=-1)
 
const Array< T > & assign (const LinearRange &range)
 
Array< T > & zeros (int n)
 
Array< T > & ones (int n)
 
Array< T > & rand (int n, R &r=rnd)
 
Array< T > & randNorm (int n, R &r=rnd)
 
const Array< T > & copy (S *a, int n, const S &val=0) const
 
const Array< T > & copy (T *a, int n, const T &val=0) const
 
const Array< T > & copy (S &a) const
 
const Array< T > & copy (Array< S > &a) const
 
const Array< T > & append (T a, int n=1)
 
const Array< T > & append (const S *a, int n)
 
const Array< T > & append (const T *a, int n)
 
const Array< T > & append (const S &a)
 
const Array< T > & append (const Array< T > &a)
 
const Array< T > & repeat (int n)
 
int size (void) const
 
bool empty (void) const
 
virtual int resize (int n, const T &val=0)
 
int capacity (void) const
 
int maxCapacity (void) const
 
const T & operator[] (int i) const
 
T & operator[] (int i)
 
const T & at (int i) const
 
T & at (int i)
 
const T & front (void) const
 
T & front (void)
 
const T & back (void) const
 
T & back (void)
 
int push (const T &val)
 
int push (const R &x)
 
pop (void)
 
const T * data (void) const
 
T * data (void)
 
iterator begin (void)
 
const_iterator begin (void) const
 
iterator end (void)
 
const_iterator end (void) const
 
Array< T > & insert (int i, const T &v)
 
iterator insert (iterator i, const T &v)
 
Array< T > & erase (int i)
 
iterator erase (iterator i)
 
Array< T > & sortedIndex (Array< int > &indices, int first=0, int last=-1)
 
 CONTAINEROPS1SCALARDEC (Array< T >, operator=)
 
 CONTAINEROPS1DEC (Array< T >, operator+=)
 
 CONTAINEROPS1DEC (Array< T >, operator-=)
 
 CONTAINEROPS1DEC (Array< T >, operator*=)
 
 CONTAINEROPS1DEC (Array< T >, operator/=)
 
 CONTAINEROPS1DEC (Array< T >, operator%=)
 
 CONTAINEROPS2DEC (class TT, Array< TT >, operator+)
 
 CONTAINEROPS2DEC (class TT, Array< TT >, operator-)
 
 CONTAINEROPS2DEC (class TT, Array< TT >, operator*)
 
 CONTAINEROPS2DEC (class TT, Array< TT >, operator/)
 
 CONTAINEROPS2DEC (class TT, Array< TT >, operator%)
 
Array< T > operator- (void)
 
Array< T > & sin (void)
 
Array< T > & cos (void)
 
Array< T > & tan (void)
 
Array< T > & asin (void)
 
Array< T > & acos (void)
 
Array< T > & atan (void)
 
Array< T > & sinh (void)
 
Array< T > & cosh (void)
 
Array< T > & tanh (void)
 
Array< T > & asinh (void)
 
Array< T > & acosh (void)
 
Array< T > & atanh (void)
 
Array< T > & exp (void)
 
Array< T > & log (void)
 
Array< T > & log10 (void)
 
Array< T > & erf (void)
 
Array< T > & erfc (void)
 
Array< T > & sqrt (void)
 
Array< T > & cbrt (void)
 
Array< T > & square (void)
 
Array< T > & cube (void)
 
 CONTAINERFUNC1DEC (Array< T >, pow)
 
Array< T > & exp (double base)
 
Array< T > & ceil (void)
 
Array< T > & floor (void)
 
Array< T > & abs (void)
 
Array< T > & decibel (double level=0.0)
 
Array< T > & linear (double level)
 
Array< T > & averageAdd (const Array< T > &a, int n)
 
Array< T > & averageAdd (const Array< T > &a, int n, Array< T > &sq)
 
Array< T > & averageAdd (const Array< T > &a, int n, Array< T > &sq, Array< T > &sd)
 
min (int first=0, int last=-1) const
 
int minIndex (int first=0, int last=-1) const
 
int minIndex (T &min, int first=0, int last=-1) const
 
max (int first=0, int last=-1) const
 
int maxIndex (int first=0, int last=-1) const
 
int maxIndex (T &max, int first=0, int last=-1) const
 
void minMax (T &min, T &max, int first=0, int last=-1) const
 
void minMaxIndex (int &minindex, int &maxindex, int first=0, int last=-1) const
 
void minMaxIndex (T &min, int &minindex, T &max, int &maxindex, int first=0, int last=-1) const
 
numerical_traits< T >::mean_type mean (int first=0, int last=-1) const
 
numerical_traits< T >::mean_type mean (typename numerical_traits< T >::variance_type &stdev, int first=0, int last=-1) const
 
numerical_traits< T >
::variance_type 
variance (int first=0, int last=-1) const
 
numerical_traits< T >
::variance_type 
varianceKnown (typename numerical_traits< T >::mean_type mean, int first=0, int last=-1) const
 
numerical_traits< T >
::variance_type 
varianceFixed (typename numerical_traits< T >::mean_type fixedmean, int first=0, int last=-1) const
 
numerical_traits< T >
::variance_type 
stdev (int first=0, int last=-1) const
 
numerical_traits< T >
::variance_type 
stdevKnown (typename numerical_traits< T >::mean_type mean, int first=0, int last=-1) const
 
numerical_traits< T >
::variance_type 
stdevFixed (typename numerical_traits< T >::mean_type fixedmean, int first=0, int last=-1) const
 
numerical_traits< T >
::variance_type 
sem (int first=0, int last=-1) const
 
numerical_traits< T >
::variance_type 
semKnown (typename numerical_traits< T >::mean_type mean, int first=0, int last=-1) const
 
numerical_traits< T >
::variance_type 
semFixed (typename numerical_traits< T >::mean_type fixedmean, int first=0, int last=-1) const
 
numerical_traits< T >
::variance_type 
absdev (int first=0, int last=-1) const
 
numerical_traits< T >
::variance_type 
absdevKnown (typename numerical_traits< T >::mean_type mean, int first=0, int last=-1) const
 
numerical_traits< T >
::variance_type 
rms (int first=0, int last=-1) const
 
numerical_traits< T >
::variance_type 
skewness (int first=0, int last=-1) const
 
numerical_traits< T >
::variance_type 
kurtosis (int first=0, int last=-1) const
 
sum (int first=0, int last=-1) const
 
numerical_traits< T >
::variance_type 
squaredSum (int first=0, int last=-1) const
 
numerical_traits< T >
::variance_type 
power (int first=0, int last=-1) const
 
double rank (int first=0, int last=-1)
 
ostream & save (ostream &str, int width=10, int prec=5) const
 
void save (const string &file, int width=10, int prec=5) const
 
istream & load (istream &str, const string &stop="", string *line=0)
 
Array< T > & load (const string &file, const string &stop="")
 
- Public Member Functions inherited from DaqError
 DaqError (void)
 
void clearError (void)
 
long long error (void) const
 
void setError (long long flags)
 
void addError (long long flags)
 
void delError (long long flags)
 
void addDaqError (int de)
 
void addAttError (int ae)
 
string errorStr (void) const
 
void setErrorStr (const string &strg)
 
void addErrorStr (const string &strg)
 
void setErrorStr (int errnum)
 
void addErrorStr (int errnum)
 
string errorText (void) const
 
bool success (void) const
 
bool failed (void) const
 
bool busy (void) const
 
bool overflow (void) const
 
bool underflow (void) const
 
bool attenuatorFailed (void) const
 
void update (const DaqError *de)
 

Static Public Member Functions

static void setAcquire (const Acquire *a)
 
static double defaultMaxSampleRate (void)
 
static void setDefaultMaxSampleRate (double maxrate)
 
static double defaultMinSampleInterval (void)
 
static void setDefaultMinSampleInterval (double minsample)
 
- Static Public Member Functions inherited from DaqError
static string errorText (long long flags)
 

Static Public Attributes

static const double MuteIntensity = Attenuate::MuteIntensity
 
static const double NoIntensity = -2.0e37
 
static const double NoLevel = -2.0e37
 
static const double AutoRange = -2.0e300
 
static const double ExtRef = -1.0e300
 
- Static Public Attributes inherited from SampleData< float >
static const string RampStrings
 
- Static Public Attributes inherited from DaqError
static const long long NoDevice = 1LL<<0
 
static const long long DeviceNotOpen = 1LL<<1
 
static const long long MultipleDevices = 1LL<<2
 
static const long long InvalidStartSource = 1LL<<3
 
static const long long MultipleStartSources = 1LL<<4
 
static const long long InvalidDelay = 1LL<<5
 
static const long long MultipleDelays = 1LL<<6
 
static const long long MultiplePriorities = 1LL<<7
 
static const long long InvalidSampleRate = 1LL<<8
 
static const long long MultipleSampleRates = 1LL<<9
 
static const long long InvalidContinuous = 1LL<<10
 
static const long long MultipleContinuous = 1LL<<11
 
static const long long MultipleRestart = 1LL<<12
 
static const long long NoData = 1LL<<13
 
static const long long MultipleBuffersizes = 1LL<<14
 
static const long long InvalidBufferTime = 1LL<<15
 
static const long long MultipleBufferTimes = 1LL<<16
 
static const long long InvalidUpdateTime = 1LL<<17
 
static const long long MultipleUpdateTimes = 1LL<<18
 
static const long long InvalidTrace = 1LL<<19
 
static const long long InvalidChannel = 1LL<<20
 
static const long long MultipleChannels = 1LL<<21
 
static const long long InvalidReference = 1LL<<22
 
static const long long MultipleReferences = 1LL<<23
 
static const long long InvalidDither = 1LL<<24
 
static const long long MultipleDither = 1LL<<25
 
static const long long InvalidReglitch = 1LL<<26
 
static const long long MultipleReglitch = 1LL<<27
 
static const long long InvalidGain = 1LL<<28
 
static const long long MultipleGains = 1LL<<29
 
static const long long Underflow = 1LL<<30
 
static const long long Overflow = 1LL<<31
 
static const long long CalibrationFailed = 1LL<<32
 
static const long long InvalidChannelType = 1LL<<33
 
static const long long InvalidChannelSequence = 1LL<<34
 
static const long long Busy = 1LL<<35
 
static const long long DeviceError = 1LL<<36
 
static const long long OverflowUnderrun = 1LL<<37
 
static const long long Unknown = 1LL<<38
 
static const long long NoIntensity = 1LL<<39
 
static const long long AttNotOpen = 1LL<<40
 
static const long long AttInvalidDevice = 1LL<<41
 
static const long long AttFailed = 1LL<<42
 
static const long long AttUnderflow = 1LL<<43
 
static const long long AttOverflow = 1LL<<44
 
static const long long AttIntensityUnderflow = 1LL<<45
 
static const long long AttIntensityOverflow = 1LL<<46
 
static const long long AttIntensityFailed = 1LL<<47
 

Friends

ostream & operator<< (ostream &str, const OutData &od)
 

Additional Inherited Members

- Public Types inherited from SampleData< float >
typedef float value_type
 
typedef float * pointer
 
typedef float & reference
 
typedef const float & const_reference
 
typedef int size_type
 
typedef float * iterator
 
typedef const float * const_iterator
 
typedef double range_type
 
typedef LinearRange::const_iterator const_range_iterator
 
- Public Types inherited from Array< T >
typedef T value_type
 
typedef T * pointer
 
typedef T & reference
 
typedef const T & const_reference
 
typedef int size_type
 
typedef T * iterator
 
typedef const T * const_iterator
 

Detailed Description

An output signal for a data acquisition board.

Author
Marco Hackenberg, Jan Benda
Bug:
noiseWave(), bandNoiseWave(): should set negative carrier frequency -> but: calibrate repro still does not calibrate white noise stimuli!

Before doing anything with an OutData you should set the output trace by setTrace() or setTraceName() first.

The way the data values of the signal are interpreted by the hardware driver interface class depends on whether an attenuator is connected to the output line and on the type of external reference. For normal operation without a connected attenuator, the data values are given in units unit. The hardware driver interface class converts the data values by multiplying with scale() to the voltage that is put out by the daq board. Both intensity() and level() are ignored. Which gain is used for converting the voltage to integer values that are transferred to the DAQ board can be controlled by request(). A constant-voltage external reference is used as an additionally available gain factor. If a non-constant external reference is used by explicitely requesting it with setExtRef() or request( min, ExtRef ), then the values from 0 to 1 (unipolar mode) or -1 to 1 (bipolar mode) are mapped to the full output range of the daq board. This range can be modified by scale().

In case of an attenuator connected to the output line, the values from 0 to 1 (unipolar mode) or -1 to 1 (bipolar mode) are mapped to the full output range of the daq board. scale() might be used internally by AnalogOutput for proper scaling. The resulting voltage is then attenuated by additional hardware according to the requested intensity() or level().

Constructor & Destructor Documentation

OutData ( void  )

Create an empty signal.

OutData ( int  n,
double  stepsize 
)

Create an OutData-object with n data elements sampled with stepsize seconds.

OutData ( double  duration,
double  stepsize 
)

Create an OutData-object for data elements sampled with stepsize for duration seconds.

OutData ( const R *  a,
int  n,
double  stepsize = 1.0 
)

Create an OutData-object with n data elements sampled with stepsize and initialzes them with the values given in a.

OutData ( const vector< R > &  a,
double  stepsize = 1.0 
)

Create an OutData-object with the same size and content as the vector a, sampled with stepsize.

OutData ( const Array< R > &  a,
double  stepsize = 1.0 
)

Create an OutData-object with the same size and content as the array a, sampled with stepsize.

OutData ( const SampleData< R > &  sa)

Create an OutData-object with the same size and content as the array sa. sa.offset() is set to zero.

References SampleData< float >::setOffset().

OutData ( const OutData od)

Copy constructor. Create an OutData-object with the same size, content, and properties as od.

References DaqError::error(), and DaqError::setError().

~OutData ( void  )
virtual

The destructor.

Member Function Documentation

const OutData & operator= ( const R &  a)

Set the size(), capacity() and content of the array to a without affecting the stepsize() and other properties.

See Also
assign()

References OutData::assign().

const OutData & operator= ( const SampleData< R > &  a)

Set the content and stepsize of the OutData to sa.

See Also
assign()

References OutData::assign().

const OutData & operator= ( const OutData od)

Set the content and properties of the OutData to od.

See Also
assign()

References OutData::assign().

const OutData & operator= ( float  x)

Set the value of each data element to val.

const OutData & operator= ( double  x)
const OutData & operator= ( long double  x)
const OutData & operator= ( signed char  x)
const OutData & operator= ( unsigned char  x)
const OutData & operator= ( signed int  x)
const OutData & operator= ( unsigned int  x)
const OutData & operator= ( signed long  x)
const OutData & operator= ( unsigned long  x)
const OutData & operator+= ( float  x)

Add val to of each data element.

const OutData & operator+= ( double  x)
const OutData & operator+= ( long double  x)
const OutData & operator+= ( signed char  x)
const OutData & operator+= ( unsigned char  x)
const OutData & operator+= ( signed int  x)
const OutData & operator+= ( unsigned int  x)
const OutData & operator+= ( signed long  x)
const OutData & operator+= ( unsigned long  x)
const OutData & operator-= ( float  x)

Subtract val to of each data element.

const OutData & operator-= ( double  x)
const OutData & operator-= ( long double  x)
const OutData & operator-= ( signed char  x)
const OutData & operator-= ( unsigned char  x)
const OutData & operator-= ( signed int  x)
const OutData & operator-= ( unsigned int  x)
const OutData & operator-= ( signed long  x)
const OutData & operator-= ( unsigned long  x)
const OutData & operator*= ( float  x)

Multiply val to of each data element.

const OutData & operator*= ( double  x)
const OutData & operator*= ( long double  x)
const OutData & operator*= ( signed char  x)
const OutData & operator*= ( unsigned char  x)
const OutData & operator*= ( signed int  x)
const OutData & operator*= ( unsigned int  x)
const OutData & operator*= ( signed long  x)
const OutData & operator*= ( unsigned long  x)
const OutData & operator/= ( float  x)

Divide each data element by val

const OutData & operator/= ( double  x)
const OutData & operator/= ( long double  x)
const OutData & operator/= ( signed char  x)
const OutData & operator/= ( unsigned char  x)
const OutData & operator/= ( signed int  x)
const OutData & operator/= ( unsigned int  x)
const OutData & operator/= ( signed long  x)
const OutData & operator/= ( unsigned long  x)
const OutData & operator+= ( const OutData od)
OutData & assign ( const R *  a,
int  n,
const double  stepsize = 1 
)

Set the size() and capacity() of the OutData array to n, its content to a, and the stepsize to stepsize. All other properties are not affected.

References SampleData< float >::assign().

Referenced by OutData::operator=().

OutData & assign ( const R &  a,
const double  stepsize = 1 
)

Set the size(), capacity(), and content of the OutData array to a, and the stepsize to stepsize. All other properties are not affected.

References SampleData< float >::assign().

OutData & assign ( const SampleData< R > &  sa)

Set the size(), capacity(), stepsize(), and content of the OutData array to sa. sa.offset() is set tot zero. All other properties are not affected.

References SampleData< float >::assign(), and SampleData< float >::setOffset().

OutData & assign ( const OutData od)

Make the OutData object a copy of od.

References SampleData< float >::assign(), and DaqError::setError().

const OutData & copy ( R *  a,
int  n,
const float &  val = 0 
) const

Copy the content of the OutData object to a. If necessary remaining elements of a are set to val.

References SampleData< float >::copy().

const OutData & copy ( R &  a) const

Copy the content and stepsize (if present) of the OutData object to a.

References SampleData< float >::copy().

const OutData & copy ( OutData od) const

Make od a copy of the OutData object.

References SampleData< float >::copy(), and DaqError::error().

OutData & append ( const OutData od,
const string &  name = "" 
)

Append od to the OutData object. If the stepsize of od differs, then od is resampled with linear interpolation.

Parameters
[in]\aname the optional name can be used to functionally describe the resulting signal.

References SampleData< float >::append(), SampleData< T >::length(), and SampleData< float >::length().

OutData & repeat ( int  n,
const string &  name = "" 
)

Repeat the current content of the OutData array n times.

Parameters
[in]\aname the optional name can be used to functionally describe the resulting signal.

References OutData::duration(), SampleData< float >::length(), and Array< T >::repeat().

void clear ( void  )
virtual

Clear the data and the description(), but not any additional information like trace(), intensity() ,etc.

Reimplemented from SampleData< float >.

References SampleData< float >::clear().

Referenced by InData::copy(), OutData::fill(), and OutData::load().

string errorMessage ( void  ) const

Return string with an error message: '"ident", channel # on device #: error message'. If there isn't any error, an empty string is returned.

References OutData::channel(), OutData::device(), DaqError::errorStr(), OutData::ident(), and DaqError::success().

double sampleRate ( void  ) const

The sampling rate of the signal in Hertz

References SampleData< float >::stepsize().

void setSampleRate ( double  rate)

Set the sampling rate of the signal to rate Hertz.

References SampleData< float >::setStepsize().

Referenced by InData::copy().

double sampleInterval ( void  ) const

The sampling interval of the signal in seconds

References SampleData< float >::stepsize().

Referenced by OutData::fixSample().

void setSampleInterval ( double  step)

Set the sampling interval of the signal to step seconds.

References SampleData< float >::setStepsize().

int startSource ( void  ) const

The source for the start trigger of the data aquisition.

void setStartSource ( int  startsource)

Set the source for the start trigger of the data aquisition to startsource. See the manual of the data acquisition board for details. If set to zero, the output of the signal starts immediately.

double delay ( void  ) const

Delay in seconds from start trigger to start of aquisition.

Referenced by Acquire::directWrite(), and Acquire::write().

void setDelay ( double  delay)

Set delay to delay (in seconds).

bool priority ( void  ) const

Returns true if the signal has the priority to run even if there is still another signal running.

Referenced by Acquire::directWrite(), OutData::setPriority(), Acquire::testWrite(), and Acquire::write().

void setPriority ( const bool  priority = true)

Set the priority of the signal to priority. If priority is true then the signal is processed even if there is still another signal running. Otherwise the signal is not processed and returns with an error.

References OutData::priority().

bool continuous ( void  ) const

Is output performed in continuous mode?

Referenced by OutData::setContinuous().

void setContinuous ( bool  continuous = true)

Set continuous output to continuous.

References OutData::continuous().

bool restart ( void  ) const

Is output restarting the data acquisition?

Referenced by Acquire::directWrite(), OutData::setRestart(), and Acquire::write().

void setRestart ( bool  restart = true)

If restart is set to true, then the ouput of the signal will restart the data acquisition.

References OutData::restart().

int device ( void  ) const
void setDevice ( int  device)

Set the device id to device. You only need to specify an output device if more than one output devices are available and the data should be sent to an output device other than the default one. Alternatively, you can set an output trace by setTrace() or setTraceName() (recommended). Then the Acquire class fills in the device and channel information.

See Also
device(), setChannel(), setTrace(), setTraceName()

References OutData::device().

Referenced by TraceSpec::apply(), Acquire::directWrite(), Acquire::testWrite(), and Acquire::write().

int channel ( void  ) const

The number of the channel on the specified device that is used for output.

See Also
setChannel(), device(), trace(), traceName()

Referenced by Acquire::directWrite(), OutData::errorMessage(), OutData::setChannel(), Acquire::testWrite(), and Acquire::write().

void setChannel ( int  channel)

Set the number of the channel on the specified device that should be used for output to channel. Default is the first ('0') channel.

See Also
channel(), setDevice(), setTrace(), setTraceName()

References OutData::channel().

Referenced by TraceSpec::apply(), and Acquire::writeZero().

void setChannel ( int  channel,
int  device 
)

Set the number of the channel to channel and the device to device. Alternatively, you can set an output trace by setTrace() or setTraceName() (recommended). Then the Acquire class fills in the device and channel information.

See Also
channel(), setDevice(), setTrace(), setTraceName()

References OutData::channel(), and OutData::device().

int trace ( void  ) const

The index of the output trace.

See Also
setTrace(), channel(), device(), traceName()

Referenced by TraceSpec::apply(), and Acquire::applyOutTrace().

int setTrace ( int  index)

Set the output trace by specifying its index index. If an Acquire class was specified by setAcquire(), then channel number, device, maximum sampling rate, etc. are set according to the trace index. Otherwise clears the channel(), device(), and the trace() index so that they are set later by one of the Acquire::write() functions.

Returns
  • 0: success
  • -1: index < 0
  • -2: trace does not exist
  • -3: invalid match
See Also
trace(), setChannel(), setDevice(), setTraceName(), setMaxSampleRate(), setFixedSampleRate()

References Acquire::applyOutTrace(), and SampleData< float >::index().

Referenced by TraceSpec::apply(), and Acquire::applyOutTrace().

string traceName ( void  ) const

The name of the output trace.

See Also
setTrace(), channel(), device(), traceName()

Referenced by TraceSpec::apply(), and Acquire::applyOutTrace().

int setTraceName ( const string &  name)

Set the output trace by specifying its name name. If an Acquire class was specified by setAcquire(), then channel number, device, maximum sampling rate, etc. are set according to the trace name. Otherwise clears the channel(), device(), and the trace() index so that they are set later by one of the Acquire::write() functions.

Returns
  • 0: success
  • -1: index < 0
  • -2: trace does not exist
  • -3: invalid match
See Also
trace(), setChannel(), setDevice(), setTraceName(), setMaxSampleRate(), setFixedSampleRate()

References Acquire::applyOutTrace().

void setTrace ( int  index,
const string &  name 
)

Set the index and the name of the output trace to index and name, respectively, without resetting or updating other information.

References SampleData< float >::index().

void setAcquire ( const Acquire a)
static

Tell OutData the Acquire class a that manages all output traces. Used by setTrace() and setTraceName() to fill in further information about the output trace (scale(), unit(), maxSampleRate(), fixedSampleRate().

Referenced by Acquire::Acquire(), and Acquire::~Acquire().

string ident ( void  ) const

A string identifying the signal.

Referenced by OutData::errorMessage(), and OutData::setIdent().

void setIdent ( const string &  ident)

Set the identifier of the ouput signal to ident.

References OutData::ident().

Referenced by OutData::fill(), and OutData::load().

const Options & description ( void  ) const

Returns the description of the output signal.

Referenced by InData::copy(), and OutData::setDescription().

Options & description ( void  )

Returns the description of the output signal.

void setDescription ( const Options &  description)

Set the description of the output signal to description.

References OutData::description().

double requestedMin ( void  ) const

Returns the minimum value of the signal trace that should be used for determining the appropriate gain setting on the daq board. If AutoRange is returned, then the minimum value of the current signal trace should be used. If ExtRef is returned, then the external reference should be used regardless of the signal's minimum and maximum values.

See Also
requestedMax(), request()
double requestedMax ( void  ) const

Returns the maximum value of the signal trace that should be used for determining the appropriate gain setting on the daq board. If AutoRange is returned, then the maximum value of the current signal trace should be used. If ExtRef is returned, then the external reference should be used regardless of the signal's minimum and maximum values.

See Also
requestedMin(), request()
void request ( double  min,
double  max 
)

Set the minimum and maximum value of the signal trace that should be used for determining the appropriate gain setting on the daq board to min and max respectively. Use AutoRange to indicate that the minimum or maximum value of the current signal trace should be used. Use ExtRef for the maximum value to indicate that the external reference should be used regardless of the signal's minimum and maximum values. In this case the value of min then still determines the polarity.

See Also
setExtRef(), requestedMin(), requestedMax()

References SampleData< float >::max(), and SampleData< float >::min().

Referenced by OutData::setExtRef().

void setExtRef ( void  )

Force the hardware driver to use the external reference in bipolar output mode, regardless of the signal's minimum and maximum values. Same as request( -1.0, ExtRef ).

References OutData::ExtRef, and OutData::request().

char * gainData ( void  ) const

Returns the data to be used by AnalogOutput for converting voltage to raw data. This function is internally used by the hardware driver class.

See Also
setGainData()
void setGainData ( char *  data)

Set the data to be used by AnalogOutput for converting voltage to raw data to data. This function is internally used by the hardware driver class.

See Also
gainData()

References SampleData< float >::data().

double voltage ( int  index) const

Get the voltage of the index -th element in Volt. index must be a valid index.

References SampleData< float >::operator[](), and OutData::scale().

double getVoltage ( double  val) const

Returns the voltage corresponding to the value val in Volt.

References OutData::scale().

double minVoltage ( void  ) const

Minimum possible output voltage value of the daq board. Only available AFTER writing the signal to the daq board.

See Also
maxVoltage(), minValue()
double maxVoltage ( void  ) const

Maximum possible output voltage value of the daq board. Only available AFTER writing the signal to the daq board.

See Also
minVoltage(), maxValue()
void setMinVoltage ( double  minv)

Set the minimum possible output voltage value to minv.

See Also
setMaxVoltage(), setMinValue(), minValue()
void setMaxVoltage ( double  maxv)

Set the maximum possible output votlage value to maxv.

See Also
setMinVoltage(), setMaxValue(), maxValue()
double scale ( void  ) const

The scale factor used for scaling the output signal to the voltage that is put out by the analog output device.

See Also
setScale(), unit(), setUnit()

Referenced by OutData::getVoltage(), OutData::setScale(), OutData::setUnit(), and OutData::voltage().

void setScale ( double  scale)

Set the scale factor to scale. The scale factor scale is used to scale the output signal to the voltage that is put out by the analog output device.

See Also
multiplyScale(), scale(), unit(), setUnit()

References OutData::scale().

Referenced by TraceSpec::apply(), Acquire::directWrite(), and Acquire::write().

void multiplyScale ( double  fac)

Multiply the scale factor by fac. The scale factor scale is used to scale the output signal to the voltage that is put out by the analog output device.

See Also
scale(), setScale(), unit(), setUnit()
string unit ( void  ) const
void setUnit ( const string &  unit)

Set the unit of the signal to unit.

See Also
unit(), scale(), setScale()

References OutData::unit().

Referenced by TraceSpec::apply().

void setUnit ( double  scale,
const string &  unit 
)

Set the specifications for the output signal. The signal given in unit unit is scaled by scale to the voltage that is put out by the analog output device.

See Also
unit(), scale(), setScale()

References OutData::scale(), and OutData::unit().

double minValue ( void  ) const

Minimum possible value of the signal, given the minimum output voltage of the daq board. Only available AFTER writing the signal to the daq board.

See Also
maxValue(), minVoltage()

References OutData::noLevel().

double maxValue ( void  ) const

Maximum possible value of the signal, given the maximum output voltage of the daq board. Only available AFTER writing the signal to the daq board.

See Also
minValue(), maxVoltage()

References OutData::noLevel().

double intensity ( void  ) const

Peak intensity of the signal. If MuteIntensity is returned, the attenuator is muted. If NoIntensity is returned, no attenuator is connected to the output channel.

See Also
setIntensity(), setNoIntensity(), noIntensity(), level(), muted()

Referenced by Acquire::directWrite(), OutData::setIntensity(), Acquire::testWrite(), and Acquire::write().

void setIntensity ( double  intensity)

Set output peak intensity to intensity. The intensity is used in conjunction with the carrier frequency to set an attenuator or amplifier. Passing MuteIntensity requests to mute the attenuator connected to the output channel. Setting the intensity overrides a possible set level(). If no such hardware is used, then the intensity as well the carrier frequency settings have no effect.

See Also
mute(), setCarrierFreq(), intensity(), setNoIntensity(), noIntensity(), setLevel()

References OutData::intensity().

Referenced by Acquire::directWrite(), Acquire::testWrite(), and Acquire::write().

void setNoIntensity ( void  )

Set the intensity to its default value, indicating that the intensity is not used for computing the output signal. This will cause an error, if the requested output channel is connected to an attenuator.

See Also
setIntensity(), setNoLevel()

References OutData::NoIntensity.

bool noIntensity ( void  ) const

Returns true if no intensity is set.

See Also
intensity(), noLevel()

References OutData::NoIntensity.

Referenced by Acquire::directWrite(), Acquire::testWrite(), and Acquire::write().

void mute ( void  )

Request to mute the attenuator connected to the output channel. Same as setIntensity( MuteIntensity ).

See Also
muted(), intensity(), setIntensity(), setNoIntensity()

References OutData::MuteIntensity.

bool muted ( void  ) const

Returns true if attenuator should be muted.

See Also
mute(), setIntensity()

References OutData::MuteIntensity.

double carrierFreq ( void  ) const

Carrier frequency of the signal in Hertz.

Referenced by Acquire::directWrite(), Acquire::testWrite(), and Acquire::write().

void setCarrierFreq ( double  carrierfreq)

Set carrier frequency of the signal to carrierfreq Hertz. The carrier frequency is used in conjunction with the intensity to set an attenuator or amplifier. If no such hardware is used, then the intensity as well the carrier frequency settings have no effect.

See Also
setIntensity()

Referenced by OutData::bandNoiseWave(), OutData::noiseWave(), OutData::ouNoiseWave(), OutData::rectangleWave(), OutData::setBestSample(), and OutData::sineWave().

double level ( void  ) const

The level that was set for the attenuator.

See Also
setLevel(), intensity()

Referenced by Acquire::directWrite(), OutData::setLevel(), Acquire::testWrite(), and Acquire::write().

void setLevel ( double  level)

Set attenuator level directly to level. The specified level is only used if no intensity() was specified. If no atenuator is connected, then setting the level has no effect.

See Also
level(), setIntensity()

References OutData::level().

Referenced by Acquire::directWrite(), Acquire::testWrite(), and Acquire::write().

void setNoLevel ( void  )

Set the attenuation level to its default value, indicating that the level is not used for computing the output signal. This will cause an error, if the requested output channel is connected to an attenuator and also no intensity() was specified.

See Also
setLevel(), setNoIntensity()

References OutData::NoLevel.

bool noLevel ( void  ) const
double duration ( void  ) const
double totalDuration ( void  ) const

Total duration of the output signal in seconds ( delay() + duration() ).

References OutData::duration().

double maxSampleRate ( void  )

The maximum or fixed sampling rate to be used in Hertz. If no maximum sampling rate was specified (via setMaxSampleRate(), setMinSampleInterval()) defaultMaxSampleRate() is returned. Same as 1/minSampleInterval().

See Also
fixedSampleRate()

Referenced by OutData::bestSampleRate().

void setMaxSampleRate ( double  maxrate)

Set the maximum sampling rate to maxrate Hertz.

See Also
setMinSampleInterval(), setFixedSampleRate(), setDefaultMaxSampleRate()

Referenced by TraceSpec::apply().

double minSampleInterval ( void  )
void setMinSampleInterval ( double  minsample)

Set the minimum sampling interval to minsample seconds.

See Also
setMaxSampleRate(), setFixedSampleInterval(), setDefaultMinSampleInterval()
void setFixedSampleRate ( double  rate)

Set the fixed sampling rate to rate Hertz.

See Also
setFixedSampleInterval(), setMaxSampleRate(), fixedSampleRate()

Referenced by TraceSpec::apply().

void setFixedSampleInterval ( double  interval)

Set the minimum sampling interval to interval seconds.

See Also
setFixedSampleRate(), setMinSampleInterval(), fixedSampleRate()

References SampleData< float >::interval().

bool fixedSampleRate ( void  ) const
double defaultMaxSampleRate ( void  )
static

The default maximum sampling rate to be used in Hertz. Same as 1/defaultMinSampleInterval().

See Also
maxSampleRate()
void setDefaultMaxSampleRate ( double  maxrate)
static

Set the default maximum sampling rate to maxrate Hertz.

See Also
setDefaultMinSampleInterval()
double defaultMinSampleInterval ( void  )
static

The default minimum sampling interval to be used in seconds. Same as 1/defaultMaxSampleRate().

See Also
maxSampleRate()
void setDefaultMinSampleInterval ( double  minsample)
static

Set the default minimum sampling interval to minsample seconds.

See Also
setDefaultMaxSampleRate()
double bestSampleRate ( double  carrierfreq)

Returns the optimal sampling rate (in Hertz) that should be used for a signal with carrier frequency carrierfreq Hz. The optimal sampling rate is the largest possible rate that is a multiple of four times the carrier frequency. This ensures that a sine wave with frequency carrierfreq is sampled exactly at the zero crossings, minima, and maxima, which is important for a stable output of the amplitude of the sine wave. The returned sampling rate is always smaller or equal to maxSampleRate(). If a fixed sampling rate has to be used, maxSampleRate() is returned. If carrierfreq <= 0, then maxSampleRate() is returned.

Note
specify an output trace using setTrace() or setTraceName() before calling bestSampleInterval()!
See Also
bestSampleInterval(), setBestSample(), fixedRate()

References OutData::fixedSampleRate(), Array< T >::floor(), and OutData::maxSampleRate().

double bestSampleInterval ( double  carrierfreq)

Returns the optimal sampling interval (in seconds) that should be used for a signal with carrier frequency carrierfreq Hz. The optimal sampling interval is the smallest possible interval that, multiplied by four, results in the period of the carrier frequency. This ensures that a sine wave with frequency carrierfreq is sampled exactly at the zero crossings, minima, and maxima, which is important for a stable output of the amplitude of the sine wave. The returned sampling interval is always larger or equal to minSampleInterval(). If a fixed sampling interval has to be used, minSampleInterval() is returned. If carrierfreq <= 0, then minSampleInterval() is returned.

Note
specify an output trace using setTrace() or setTraceName() before calling bestSampleInterval()!
See Also
bestSampleRate(), setBestSample()

References OutData::fixedSampleRate(), Array< T >::floor(), and OutData::minSampleInterval().

Referenced by OutData::bandNoiseWave(), OutData::fixSample(), OutData::noiseWave(), OutData::setBestSample(), and OutData::sineWave().

void setBestSample ( double  carrierfreq)

Set the sampling rate to be the optimal one that should be used for a signal with carrier frequency carrierfreq Hz. See bestSampleRate() for details. The carrier frequency is set to carrierfreq.

Note
specify an output trace using setTrace() or setTraceName() before calling bestSampleInterval()!
See Also
setSampleRate(), setSampleInterval(), setCarrierFreq(), bestSampleRate(), bestSampleInterval()

References OutData::bestSampleInterval(), OutData::setCarrierFreq(), and SampleData< float >::setStepsize().

Referenced by OutData::fill().

void fixSample ( void  )
istream & load ( istream &  str,
const string &  filename 
)

Load stimulus from input stream str with description ident. The file has to contain at least two colums of ascii-numbers. The first column is the time in seconds, if the unit is not specified as ms in the key. The second column is the stimulus amplitude. All metadata in front of the data (marked with a '#') is loaded as the description of the stimulus. filename is added to the stimulus description.

References OutData::clear(), DaqError::clearError(), SampleData< float >::load(), SampleData< float >::range(), and OutData::setIdent().

Referenced by OutData::load().

OutData & load ( const string &  file,
const string &  filename = "" 
)

Load stimulus from file file. The file has to contain at least two colums of ascii-numbers. The first column is the time in seconds, if the unit is not specified as ms in the key. The second column is the stimulus amplitude. All metadata in front of the data (marked with a '#') is loaded as the description of the stimulus. If filename is not empty, it is added to the stimulus description. Otherwise, file is added.

References OutData::clear(), DaqError::clearError(), OutData::load(), and OutData::setIdent().

double maximize ( double  max = 1.0)

Multiplies each element of the signal with some factor such that the largest element takes the value max. Returns the used multiplication factor.

double minmaximize ( double  max = 1.0)

Multiplies each element of the signal with some factor such that no value is greater than max or smaller than - max. Returns the used multiplication factor.

double fill ( const OutData am,
double  carrierfreq,
const string &  ident = "" 
)

Create a stimulus with description ident from the given amplitude modulation am (in seconds) filled with a sine wave carrier with frequency carrierfreq Hz. In case the carrier frequency is negative, the aamplitude modulation is filled with a Gaussian white noise from 0 to -carrierfreq Hz. The sampling rate is set using bestSampleRate( carrierfreq ). The carrier frequency of the signal is set to carrierfreq. am must have values ranging from 0...1 and must contain at least 2 elements.

Returns
1.0 for positive carrier frequencies (sine waves) or the factor that was used to scale the signal down to accomodate a noise carrier.

References SampleData< float >::back(), OutData::clear(), DaqError::clearError(), SampleData< T >::length(), SampleData< float >::operator[](), SampleData< float >::pos(), SampleData< T >::pos(), relacs::rnd, OutData::setBestSample(), OutData::setIdent(), SampleData< float >::setRangeBack(), SampleData< T >::sin(), SampleData< float >::size(), SampleData< T >::size(), SampleData< float >::stepsize(), SampleData< T >::stepsize(), and SampleData< T >::whiteNoise().

void constWave ( double  value,
const string &  name = "" 
)

Creates a constant stimulus consisting of a single data point with value value.

Parameters
[in]\aname the optional name can be used to functionally describe the signal.

References DaqError::clearError(), OutData::minSampleInterval(), SampleData< float >::resize(), SampleData< float >::stepsize(), and OutData::unit().

void constWave ( double  duration,
double  stepsize,
double  value,
const string &  name = "" 
)

Creates a constant stimulus that assumes value for a duration of duration seconds sampled with stepsize.

Parameters
[in]\aname the optional name can be used to functionally describe the signal.
See Also
pulseWave()

References DaqError::clearError(), OutData::fixedSampleRate(), OutData::minSampleInterval(), SampleData< float >::resize(), and OutData::unit().

void pulseWave ( double  duration,
double  stepsize,
double  value,
double  base,
const string &  name = "" 
)

Creates a pulse stimulus that assumes value for a duration of duration seconds sampled with stepsize. A final value after the pulse sets the amplitude of the signal back to base. If stepsize is negative or if fixedSampleRate(), the sampling rate is set using minSampleInterval().

Parameters
[in]\aname the optional name can be used to functionally describe the signal.

References SampleData< float >::back(), DaqError::clearError(), OutData::fixedSampleRate(), OutData::minSampleInterval(), SampleData< float >::resize(), and OutData::unit().

void rectangleWave ( double  duration,
double  stepsize,
double  period,
double  width,
double  ramp,
double  ampl = 1.0,
const string &  name = "" 
)

Creates a rectangle pulse pattern with period period, duration of the rectangle width and constant amplitude ampl. The up- and downstrokes have a width of ramp. If stepsize is negative or if fixedSampleRate(), the sampling rate is set using minSampleInterval().

Parameters
[in]\aname the optional name can be used to functionally describe the signal.

References SampleData< float >::array(), SampleData< float >::back(), DaqError::clearError(), OutData::fixedSampleRate(), OutData::minSampleInterval(), SampleData< float >::rectangle(), OutData::setCarrierFreq(), and OutData::unit().

void sineWave ( double  duration,
double  stepsize,
double  freq,
double  phase = 0.0,
double  ampl = 1.0,
double  ramp = 0.0,
const string &  name = "" 
)

Create a sine wave of constant amplitude ampl (1.0 = maximum amplitude) with freqency freq Hz, phase shift phase (in rad), duration seconds, and ramps of ramp seconds length. If fixedSampleRate() the stepsize is set to minSampleInterval(). If stepsize is negative, the sampling rate is set using bestSampleRate( freq ). The carrier frequency of the signal is set to freq.

Parameters
[in]\aname the optional name can be used to functionally describe the signal.
Note
specify an output trace using setTrace() or setTraceName() before calling sineWave()!

References SampleData< float >::array(), SampleData< float >::back(), OutData::bestSampleInterval(), DaqError::clearError(), OutData::fixedSampleRate(), OutData::minSampleInterval(), SampleData< float >::ramp(), OutData::setCarrierFreq(), Array< T >::sin(), and OutData::unit().

void noiseWave ( double  duration,
double  stepsize,
double  cutofffreq,
double  stdev = 1.0,
unsigned long *  seed = 0,
double  ramp = 0.0,
const string &  name = "" 
)

Create Gaussian white noise with cut-off freqency cutofffreq in Hz, duration seconds, and ramps of ramp seconds length. The noise signal has zero mean and standard deviation stdev. The carrier frequency of the signal is set to cutofffreq. If fixedSampleRate() the stepsize is set to minSampleInterval(). If stepsize is negative, the sampling rate is set using bestSampleRate( cutofffreq ). If seed is not 0 the value it is pointing to is used as the seed for initializing a random number generator. If *seed is 0, then the system time is used to generate a seed to imitate real randomness. The actually used seed is returned in *seed.

Parameters
[in]\aname the optional name can be used to functionally describe the signal.
Note
specify an output trace using setTrace() or setTraceName() before calling sineWave()!

References SampleData< float >::array(), SampleData< float >::back(), OutData::bestSampleInterval(), DaqError::clearError(), OutData::fixedSampleRate(), OutData::minSampleInterval(), SampleData< float >::ramp(), Array< T >::rand(), OutData::setCarrierFreq(), RandomGSL::setSeed(), SampleData< float >::stdev(), OutData::unit(), and SampleData< float >::whiteNoise().

void bandNoiseWave ( double  duration,
double  stepsize,
double  cutofffreqlow,
double  cutofffreqhigh,
double  stdev = 1.0,
unsigned long *  seed = 0,
double  ramp = 0.0,
const string &  name = "" 
)

Create Gaussian white noise between frequencies cutofffreqlow and cutofffreqhigh in Hz, duration seconds, and ramps of ramp seconds length. The noise signal has zero mean and standard deviation stdev. If fixedSampleRate() the stepsize is set to minSampleInterval(). If stepsize is negative, the sampling rate is set using bestSampleRate( cutofffreqhigh ). The carrier frequency of the signal is set to cutofffreqhigh. If seed is not 0 the value it is pointing to is used as the seed for initializing a random number generator. If *seed is 0, then the system time is used to generate a seed to imitate real randomness. The actually used seed is returned in *seed.

Parameters
[in]\aname the optional name can be used to functionally describe the signal.
Note
specify an output trace using setTrace() or setTraceName() before calling sineWave()!

References SampleData< float >::array(), SampleData< float >::back(), OutData::bestSampleInterval(), DaqError::clearError(), OutData::fixedSampleRate(), OutData::minSampleInterval(), SampleData< float >::ramp(), Array< T >::rand(), OutData::setCarrierFreq(), RandomGSL::setSeed(), SampleData< float >::stdev(), OutData::unit(), and SampleData< float >::whiteNoise().

void ouNoiseWave ( double  duration,
double  stepsize,
double  tau,
double  stdev = 1.0,
unsigned long *  seed = 0,
double  ramp = 0.0,
const string &  name = "" 
)

Create Ohrnstein-Uhlenbeck noise with time-constant tau in sec, duration seconds, and ramps of ramp seconds length. The noise signal has zero mean and standard deviation stdev. The carrier frequency of the signal is set to 1/tau. If stepsize is negative or if fixedSampleRate(), the sampling rate is set using minSampleInterval(). If seed is not 0 the value it is pointing to is used as the seed for initializing a random number generator. If *seed is 0, then the system time is used to generate a seed to imitate real randomness. The actually used seed is returned in *seed.

Parameters
[in]\aname the optional name can be used to functionally describe the signal.

References SampleData< float >::array(), SampleData< float >::back(), DaqError::clearError(), OutData::fixedSampleRate(), OutData::minSampleInterval(), SampleData< float >::ouNoise(), SampleData< float >::ramp(), Array< T >::rand(), OutData::setCarrierFreq(), RandomGSL::setSeed(), SampleData< float >::stdev(), and OutData::unit().

void sweepWave ( double  duration,
double  stepsize,
double  startfreq,
double  endfreq,
double  ampl = 1.0,
double  ramp = 0.0,
const string &  name = "" 
)

Creates a frequency sweep from startfreq f_1 to endfreq f_2 of constant amplitude ampl and with duration seconds. If stepsize is negative or if fixedSampleRate(), the sampling rate is set using minSampleInterval().

Parameters
[in]\aname the optional name can be used to functionally describe the signal.

References SampleData< float >::array(), SampleData< float >::back(), DaqError::clearError(), OutData::fixedSampleRate(), OutData::minSampleInterval(), SampleData< float >::ramp(), SampleData< float >::sweep(), and OutData::unit().

void rampWave ( double  duration,
double  stepsize,
double  first,
double  last,
const string &  name = "" 
)

Creates a ramp stimulus that starts at first and linearly ramps up to last for a duration of duration seconds sampled with stepsize.

Parameters
[in]\aname the optional name can be used to functionally describe the signal.

References DaqError::clearError(), OutData::fixedSampleRate(), OutData::minSampleInterval(), SampleData< float >::resize(), SampleData< float >::size(), and OutData::unit().

void sawUpWave ( double  duration,
double  stepsize,
double  period,
double  ramp,
double  ampl = 1.0,
const string &  name = "" 
)

Creates a sawtooth with period period and constant amplitude ampl with duration seconds. The downstroke has a width of ramp. If stepsize is negative or if fixedSampleRate(), the sampling rate is set using minSampleInterval().

Parameters
[in]\aname the optional name can be used to functionally describe the signal.

References SampleData< float >::array(), SampleData< float >::back(), DaqError::clearError(), OutData::fixedSampleRate(), OutData::minSampleInterval(), SampleData< float >::sawUp(), and OutData::unit().

void sawDownWave ( double  duration,
double  stepsize,
double  period,
double  ramp,
double  ampl = 1.0,
const string &  name = "" 
)

Creates a sawtooth with period period and constant amplitude ampl with duration seconds. The upstroke has a width of ramp. If stepsize is negative or if fixedSampleRate(), the sampling rate is set using minSampleInterval().

Parameters
[in]\aname the optional name can be used to functionally describe the signal.

References SampleData< float >::array(), SampleData< float >::back(), DaqError::clearError(), OutData::fixedSampleRate(), OutData::minSampleInterval(), SampleData< float >::sawDown(), and OutData::unit().

void triangleWave ( double  duration,
double  stepsize,
double  period,
double  ampl = 1.0,
const string &  name = "" 
)

Creates a triangle with period period and constant amplitude ampl with duration seconds. The upstroke and downstroke have a width of 0.5*period. If stepsize is negative or if fixedSampleRate(), the sampling rate is set using minSampleInterval().

Parameters
[in]\aname the optional name can be used to functionally describe the signal.

References SampleData< float >::array(), SampleData< float >::back(), DaqError::clearError(), OutData::fixedSampleRate(), OutData::minSampleInterval(), SampleData< float >::triangle(), and OutData::unit().

void alphaWave ( double &  duration,
double  stepsize,
double  period,
double  tau,
double  ampl = 1.0,
double  delay = 0.0,
const string &  name = "" 
)

Creates a train of alpha functions with period period seconds and of duration seconds total duration sampled with stepsize. The time constant of the alpha functions is tau and the alpha functions start at time delay in each period. The duration is extended such that the stimulus ends five times tau after the last alpha-function in the train. The maximum amplitude of each single aplha-function is ampl. Note, however, that by summation the resulting signal can have much larger amplitudes. If stepsize is negative or if fixedSampleRate(), the sampling rate is set using minSampleInterval().

Parameters
[in]\aname the optional name can be used to functionally describe the signal.

References SampleData< T >::alpha(), SampleData< float >::array(), SampleData< float >::back(), DaqError::clearError(), OutData::duration(), Array< T >::exp(), OutData::fixedSampleRate(), Array< T >::floor(), SampleData< float >::indices(), SampleData< float >::length(), OutData::minSampleInterval(), SampleData< float >::resize(), SampleData< float >::size(), SampleData< T >::size(), and OutData::unit().

int deviceIndex ( void  ) const
inline

The index of the next element to be written to the data buffer.

See Also
incrDeviceIndex(), devieValue(), incrDeviceCount(), deviceReset()
void incrDeviceIndex ( void  )
inline
float deviceValue ( void  )
inline

Return the value of the next element to be written to the data buffer and increment deviceIndex().

See Also
deviceIndex()
int deviceDelay ( void  ) const
inline

The number of delay elements.

See Also
setDeviceDelay()
void setDeviceDelay ( int  delay)
inline

Set the number of delay elements to delay.

See Also
deviceDelay()
int deviceCount ( void  ) const
inline

The device buffer counter.

See Also
setDeviceCount(), incrDeviceCount(), deviceReset()
void setDeviceCount ( int  count)
inline

Set the device counter to count.

See Also
deviceCount()
void incrDeviceCount ( void  )
inline

Increment the device counter and reset deviceIndex().

See Also
deviceCount()
bool deviceWriting ( void  ) const
inline

Returns true as long data need to be transferred to the device.

void deviceReset ( int  delay = 0)
inline

Reset the device index, counter, and delay.

Friends And Related Function Documentation

ostream& operator<< ( ostream &  str,
const OutData od 
)
friend

Member Data Documentation

const double MuteIntensity = Attenuate::MuteIntensity
static

Value for intensity requesting to mute the attenuator.

Referenced by Acquire::directWrite(), OutDataInfo::mute(), OutData::mute(), OutData::muted(), Acquire::testWrite(), and Acquire::write().

const double NoIntensity = -2.0e37
static
const double NoLevel = -2.0e37
static

Default value fur attenuator level indicating that no attenuator is used.

Referenced by Acquire::maxLevel(), Acquire::minLevel(), OutDataInfo::noLevel(), OutData::noLevel(), OutDataInfo::setNoLevel(), and OutData::setNoLevel().

const double AutoRange = -2.0e300
static

Indicates that the minimum or maximum value of the signal trace should be used for setting the appropriate gain on the daq board.

See Also
requestedMin(), requestedMax(), request()
const double ExtRef = -1.0e300
static

Indicates that the external reference should be used.

See Also
requestedMin(), requestedMax(), request()

Referenced by OutData::setExtRef().


The documentation for this class was generated from the following files: