Plaquette
 
Loading...
Searching...
No Matches
pq::AbstractField Class Referenceabstract
Inheritance diagram for pq::AbstractField:
Collaboration diagram for pq::AbstractField:

Public Member Functions

virtual float at (float proportion)=0
 Returns value at given proportion in [0, 1].
 
template<typename T >
void populate (T *array, size_t size, bool wrap=false)
 Fills an array with values from this field.
 
virtual void clearEvents ()
 
float seconds () const
 Returns engine time in seconds.
 
uint32_t milliSeconds () const
 Returns engine time in milliseconds.
 
uint64_t microSeconds () const
 Returns engine time in microseconds.
 
unsigned long nSteps () const
 Returns number of engine steps.
 
float sampleRate () const
 Returns engine sample rate.
 
float samplePeriod () const
 Returns enginesample period.
 
virtual float get ()
 Returns value (typically between 0 and 1, may vary depending on class).
 
 operator float ()
 Object can be used directly to access its value.
 
virtual float mapTo (float toLow, float toHigh)
 Maps value to new range.
 
virtual float put (float value)
 Pushes value into the unit.
 
 operator bool ()
 Operator that allows usage in conditional expressions.
 

Static Public Member Functions

static bool analogToDigital (float f)
 Converts analog (float) value to digital (bool) value.
 
static float digitalToAnalog (bool b)
 Converts digital (bool) value to analog (float) value.
 

Protected Member Functions

virtual void begin ()
 
virtual void step ()
 
virtual bool eventTriggered (EventType eventType)
 Returns true iff an event of a certain type has been triggered.
 
virtual void onEvent (EventCallback callback, EventType eventType)
 Registers event callback.
 
Engineengine () const
 Returns the engine that owns this unit.
 

Member Function Documentation

◆ at()

virtual float pq::AbstractField::at ( float  proportion)
pure virtual

Returns value at given proportion in [0, 1].

Parameters
proportionthe proportion of the field to read
Returns
the value

Implemented in pq::PivotField, and pq::TimeSliceField< COUNT >.

◆ eventTriggered()

virtual bool pq::Unit::eventTriggered ( EventType  eventType)
inlineprotectedvirtualinherited

Returns true iff an event of a certain type has been triggered.

Reimplemented in pq::AbstractWave, pq::Alarm, pq::Metronome, pq::PeakDetector, pq::DigitalSource, pq::Ramp, pq::StreamIn, and pq::TimeSliceField< COUNT >.

◆ get()

virtual float pq::Chainable::get ( )
inlinevirtualinherited

Returns value (typically between 0 and 1, may vary depending on class).

Reimplemented in pq::AbstractWave, pq::Chronometer, pq::DigitalUnit, pq::AnalogSource, pq::AnalogIn, pq::Ramp, pq::Smoother, pq::PivotField, and pq::TimeSliceField< COUNT >.

◆ mapTo()

virtual float pq::Chainable::mapTo ( float  toLow,
float  toHigh 
)
inlinevirtualinherited

Maps value to new range.

This function guarantees that the value is within [toLow, toHigh]. If the unit's values are unbounded, returns get() constrained to [toLow, toHigh].

Reimplemented in pq::Normalizer, pq::DigitalUnit, pq::AnalogSource, pq::AnalogIn, pq::Ramp, pq::StreamIn, and pq::StreamOut.

◆ populate()

template<typename T >
void pq::AbstractField::populate ( T *  array,
size_t  size,
bool  wrap = false 
)
inline

Fills an array with values from this field.

Parameters
arraythe array to read into
sizethe size of the array
wrapif true, the array is considered to be a circular buffer that wraps around

◆ put()

virtual float pq::Chainable::put ( float  value)
inlinevirtualinherited

Pushes value into the unit.

Parameters
valuethe value sent to the unit
Returns
the new value of the unit

Reimplemented in pq::Chronometer, pq::MinMaxScaler, pq::Normalizer, pq::PeakDetector, pq::DigitalUnit, pq::AnalogOut, pq::AbstractServoOut, pq::Ramp, pq::Smoother, pq::StreamOut, pq::PivotField, and pq::TimeSliceField< COUNT >.


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