libm2k
Classes | Functions
HardwareTrigger

Contains the representation of the ADALM2000 trigger system. More...

Classes

class  libm2k::M2kHardwareTrigger
 Controls the hardware trigger for ADALM2000. More...
 

Functions

virtual int libm2k::M2kHardwareTrigger::getAnalogLevelRaw (unsigned int chnIdx)=0
 Get the raw analog trigger level for one channel. More...
 
virtual void libm2k::M2kHardwareTrigger::setAnalogLevelRaw (unsigned int chnIdx, int level)=0
 Set the raw analog trigger level for one channel. More...
 
virtual void libm2k::M2kHardwareTrigger::setAnalogLevel (unsigned int chnIdx, double v_level)=0
 Set the analog trigger level for one channel. More...
 
virtual double libm2k::M2kHardwareTrigger::getAnalogLevel (unsigned int chnIdx)=0
 Get the analog trigger level for one channel. More...
 
virtual double libm2k::M2kHardwareTrigger::getAnalogHysteresis (unsigned int chnIdx)=0
 Get the analog hysteresis value for one channel. More...
 
virtual void libm2k::M2kHardwareTrigger::setAnalogHysteresis (unsigned int chnIdx, double hysteresis)=0
 Set the analog hysteresis value for one channel. More...
 
virtual M2K_TRIGGER_CONDITION_ANALOG libm2k::M2kHardwareTrigger::getAnalogCondition (unsigned int chnIdx)=0
 Get the trigger condition for the analog trigger on a specific channel. More...
 
virtual void libm2k::M2kHardwareTrigger::setAnalogCondition (unsigned int chnIdx, M2K_TRIGGER_CONDITION_ANALOG cond)=0
 Set the trigger condition for the analog trigger on a specific channel. More...
 
virtual M2K_TRIGGER_CONDITION_DIGITAL libm2k::M2kHardwareTrigger::getDigitalCondition (unsigned int chnIdx)=0
 Get the trigger condition for the digital trigger on a specific channel. More...
 
virtual M2K_TRIGGER_CONDITION_DIGITAL libm2k::M2kHardwareTrigger::getDigitalCondition (libm2k::digital::DIO_CHANNEL chnIdx)=0
 Get the trigger condition for the digital trigger on a specific channel. More...
 
virtual void libm2k::M2kHardwareTrigger::setDigitalCondition (unsigned int chnIdx, M2K_TRIGGER_CONDITION_DIGITAL cond)=0
 Set the trigger condition for the digital trigger on a specific channel. More...
 
virtual void libm2k::M2kHardwareTrigger::setDigitalCondition (libm2k::digital::DIO_CHANNEL chnIdx, M2K_TRIGGER_CONDITION_DIGITAL cond)=0
 Set the trigger condition for the digital trigger on a specific channel. More...
 
virtual M2K_TRIGGER_MODE libm2k::M2kHardwareTrigger::getAnalogMode (unsigned int chnIdx)=0
 Get the mode for the analog trigger on a specific channel. More...
 
virtual void libm2k::M2kHardwareTrigger::setAnalogMode (unsigned int chnIdx, M2K_TRIGGER_MODE mode)=0
 Set the mode for the analog trigger on a specific channel. More...
 
virtual libm2k::digital::DIO_TRIGGER_MODE libm2k::M2kHardwareTrigger::getDigitalMode ()=0
 Get the mode for the digital trigger. More...
 
virtual void libm2k::M2kHardwareTrigger::setDigitalMode (libm2k::digital::DIO_TRIGGER_MODE mode)=0
 Set the mode for the digital trigger. More...
 
virtual M2K_TRIGGER_SOURCE_ANALOG libm2k::M2kHardwareTrigger::getAnalogSource ()=0
 Get the source of the analog trigger. More...
 
virtual void libm2k::M2kHardwareTrigger::setAnalogSource (M2K_TRIGGER_SOURCE_ANALOG src)=0
 Set the source of the analog trigger. More...
 
virtual int libm2k::M2kHardwareTrigger::getAnalogSourceChannel ()=0
 Get the channel source of the analog trigger. More...
 
virtual void libm2k::M2kHardwareTrigger::setAnalogSourceChannel (unsigned int chnIdx)=0
 Set the channel source of the analog trigger. More...
 
virtual int libm2k::M2kHardwareTrigger::getAnalogDelay () const =0
 Get the analog trigger delay. More...
 
virtual void libm2k::M2kHardwareTrigger::setAnalogDelay (int delay)=0
 Set the analog trigger delay. More...
 
virtual int libm2k::M2kHardwareTrigger::getDigitalDelay () const =0
 Get the digital trigger delay. More...
 
virtual void libm2k::M2kHardwareTrigger::setDigitalDelay (int delay)=0
 Set the digital trigger delay. More...
 
virtual void libm2k::M2kHardwareTrigger::setAnalogStreamingFlag (bool enable)=0
 Set the streaming flag for the analog part. More...
 
virtual bool libm2k::M2kHardwareTrigger::getAnalogStreamingFlag ()=0
 Get the streaming flag for the analog part. More...
 
virtual void libm2k::M2kHardwareTrigger::setDigitalStreamingFlag (bool enable)=0
 Set the streaming flag for the digital part. More...
 
virtual bool libm2k::M2kHardwareTrigger::getDigitalStreamingFlag ()=0
 Get the streaming flag for the digital part. More...
 
virtual M2K_TRIGGER_CONDITION_DIGITAL libm2k::M2kHardwareTrigger::getAnalogExternalCondition (unsigned int chnIdx)=0
 getAnalogExternalCondition More...
 
virtual void libm2k::M2kHardwareTrigger::setAnalogExternalCondition (unsigned int chnIdx, M2K_TRIGGER_CONDITION_DIGITAL cond)=0
 setAnalogExternalCondition More...
 
virtual M2K_TRIGGER_CONDITION_DIGITAL libm2k::M2kHardwareTrigger::getDigitalExternalCondition () const =0
 getDigitalExternalCondition More...
 
virtual void libm2k::M2kHardwareTrigger::setDigitalExternalCondition (M2K_TRIGGER_CONDITION_DIGITAL cond)=0
 setDigitalExternalCondition More...
 
virtual void libm2k::M2kHardwareTrigger::setAnalogExternalOutSelect (M2K_TRIGGER_OUT_SELECT output_select)
 Select what should be redirected on the TO (trigger out) pin.
The options are (none, trigger in, digital in, analog in).
. More...
 
virtual M2K_TRIGGER_OUT_SELECT libm2k::M2kHardwareTrigger::getAnalogExternalOutSelect ()
 Check which trigger events are forwarded on the TO (trigger out) pin. More...
 
virtual void libm2k::M2kHardwareTrigger::setDigitalSource (M2K_TRIGGER_SOURCE_DIGITAL external_src)
 Select which interface triggers the DigitalIn. More...
 
virtual M2K_TRIGGER_SOURCE_DIGITAL libm2k::M2kHardwareTrigger::getDigitalSource () const
 Check which is the source of the DigitalIn interface trigger event. More...
 
virtual void libm2k::M2kHardwareTrigger::setAnalogOutTriggerSource (M2K_TRIGGER_SOURCE_OUT src)=0
 Select which interface triggers the AnalogOut. More...
 
virtual M2K_TRIGGER_SOURCE_OUT libm2k::M2kHardwareTrigger::getAnalogOutTriggerSource () const =0
 Returns the source of the AnalogOut trigger event. More...
 
virtual void libm2k::M2kHardwareTrigger::setAnalogOutTriggerCondition (M2K_TRIGGER_CONDITION_OUT condition)=0
 Configures the triggering condition when the source of the AnalogOut trigger event is set to TRIGGER_TI_0. More...
 
virtual M2K_TRIGGER_CONDITION_OUT libm2k::M2kHardwareTrigger::getAnalogOutTriggerCondition () const =0
 Returns the condition of the AnalogOut trigger event when the source is TI. More...
 
virtual void libm2k::M2kHardwareTrigger::setAnalogOutTriggerStatus (M2K_TRIGGER_STATUS_ANALOG_OUT status)=0
 Defines the action to be performed when a trigger event occurs. More...
 
virtual M2K_TRIGGER_STATUS_ANALOG_OUT libm2k::M2kHardwareTrigger::getAnalogOutTriggerStatus () const =0
 Returns the action that is performed when a trigger event occurs. More...
 

Detailed Description

Contains the representation of the ADALM2000 trigger system.

Function Documentation

◆ getAnalogCondition()

virtual M2K_TRIGGER_CONDITION_ANALOG libm2k::M2kHardwareTrigger::getAnalogCondition ( unsigned int  chnIdx)
pure virtual

Get the trigger condition for the analog trigger on a specific channel.

Parameters
chnIdxthe required channel
Returns
the trigger condition

◆ getAnalogDelay()

virtual int libm2k::M2kHardwareTrigger::getAnalogDelay ( ) const
pure virtual

Get the analog trigger delay.

Returns
the value of the delay
Note
the delay can have negative values The negative values are used to place the trigger inside the buffer The value of the delay represents the number of samples in buffer before the triggered sample If the value is 0, the triggered sample will be the first one in the buffer For a buffer of 1000 samples, in order to have the trigger at the middle, you need to set it to -500 The minimum negative value is -8192
the delay can have positive values TBD

◆ getAnalogExternalCondition()

virtual M2K_TRIGGER_CONDITION_DIGITAL libm2k::M2kHardwareTrigger::getAnalogExternalCondition ( unsigned int  chnIdx)
pure virtual

getAnalogExternalCondition

Parameters
chnIdx: integer - the index of the required channel
Returns
M2K_TRIGGER_CONDITION_DIGITAL

◆ getAnalogExternalOutSelect()

virtual M2K_TRIGGER_OUT_SELECT libm2k::M2kHardwareTrigger::getAnalogExternalOutSelect ( )
virtual

Check which trigger events are forwarded on the TO (trigger out) pin.

Returns
M2K_TRIGGER_OUT_SELECT :
SELECT_NONE;
SELECT_TRIGGER_IN;
SELECT_DIGITAL_IN;
SELECT_ANALOG_IN;
Note
Only available from firmware v0.24.

◆ getAnalogHysteresis()

virtual double libm2k::M2kHardwareTrigger::getAnalogHysteresis ( unsigned int  chnIdx)
pure virtual

Get the analog hysteresis value for one channel.

Parameters
chnIdxthe required channel
Returns
the value of the hysteresis in Volts

◆ getAnalogLevel()

virtual double libm2k::M2kHardwareTrigger::getAnalogLevel ( unsigned int  chnIdx)
pure virtual

Get the analog trigger level for one channel.

Parameters
chnIdxthe required channel
Returns
the analog trigger level in volts

◆ getAnalogLevelRaw()

virtual int libm2k::M2kHardwareTrigger::getAnalogLevelRaw ( unsigned int  chnIdx)
pure virtual

Get the raw analog trigger level for one channel.

Parameters
chnIdxthe required channel
Returns
the raw analog trigger level

◆ getAnalogMode()

virtual M2K_TRIGGER_MODE libm2k::M2kHardwareTrigger::getAnalogMode ( unsigned int  chnIdx)
pure virtual

Get the mode for the analog trigger on a specific channel.

Parameters
chnIdxthe required channel
Returns
the analog trigger mode

◆ getAnalogOutTriggerCondition()

virtual M2K_TRIGGER_CONDITION_OUT libm2k::M2kHardwareTrigger::getAnalogOutTriggerCondition ( ) const
pure virtual

Returns the condition of the AnalogOut trigger event when the source is TI.

Returns
M2K_TRIGGER_CONDITION_OUT :
NONE_OUT - disabled;
LOW_LEVEL_OUT;
HIGH_LEVEL_OUT;
ANY_EDGE_OUT;
RISING_EDGE_OUT;
FALLING_EDGE_OUT;
Note
Only available from firmware v0.33.

◆ getAnalogOutTriggerSource()

virtual M2K_TRIGGER_SOURCE_OUT libm2k::M2kHardwareTrigger::getAnalogOutTriggerSource ( ) const
pure virtual

Returns the source of the AnalogOut trigger event.

Returns
M2K_TRIGGER_SOURCE_OUT :
TRIGGER_NONE;
TRIGGER_TI;
TRIGGER_ADC;
TRIGGER_LA;
Note
Only available from firmware v0.33.

◆ getAnalogOutTriggerStatus()

virtual M2K_TRIGGER_STATUS_ANALOG_OUT libm2k::M2kHardwareTrigger::getAnalogOutTriggerStatus ( ) const
pure virtual

Returns the action that is performed when a trigger event occurs.

Returns
M2K_TRIGGER_STATUS_ANALOG_OUT :
DISABLED;
START;
STOP;
Note
Only available from firmware v0.33.

◆ getAnalogSource()

virtual M2K_TRIGGER_SOURCE_ANALOG libm2k::M2kHardwareTrigger::getAnalogSource ( )
pure virtual

Get the source of the analog trigger.

Returns
analog trigger source (channel1, channel2, etc)

◆ getAnalogSourceChannel()

virtual int libm2k::M2kHardwareTrigger::getAnalogSourceChannel ( )
pure virtual

Get the channel source of the analog trigger.

Returns
analog trigger channel source (channel1, channel2)

◆ getAnalogStreamingFlag()

virtual bool libm2k::M2kHardwareTrigger::getAnalogStreamingFlag ( )
pure virtual

Get the streaming flag for the analog part.

Returns
whether the streaming is enabled (true/false)

◆ getDigitalCondition() [1/2]

virtual M2K_TRIGGER_CONDITION_DIGITAL libm2k::M2kHardwareTrigger::getDigitalCondition ( unsigned int  chnIdx)
pure virtual

Get the trigger condition for the digital trigger on a specific channel.

Parameters
chnIdxThe index of the required channel
Returns
The trigger condition

◆ getDigitalCondition() [2/2]

virtual M2K_TRIGGER_CONDITION_DIGITAL libm2k::M2kHardwareTrigger::getDigitalCondition ( libm2k::digital::DIO_CHANNEL  chnIdx)
pure virtual

Get the trigger condition for the digital trigger on a specific channel.

Parameters
chnIdxAn enumerator corresponding to the index of the required channel
Returns
The trigger condition

◆ getDigitalDelay()

virtual int libm2k::M2kHardwareTrigger::getDigitalDelay ( ) const
pure virtual

Get the digital trigger delay.

Returns
the value of the digital delay
Note
the delay can have negative values The negative values are used to place the trigger inside the buffer The value of the delay represents the number of samples in buffer before the triggered sample If the value is 0, the triggered sample will be the first one in the buffer For a buffer of 1000 samples, in order to have the trigger at the middle, you need to set it to -500 The minimum negative value is -8192
the delay can have positive values TBD

◆ getDigitalExternalCondition()

virtual M2K_TRIGGER_CONDITION_DIGITAL libm2k::M2kHardwareTrigger::getDigitalExternalCondition ( ) const
pure virtual

getDigitalExternalCondition

Returns
M2K_TRIGGER_CONDITION_DIGITAL

◆ getDigitalMode()

virtual libm2k::digital::DIO_TRIGGER_MODE libm2k::M2kHardwareTrigger::getDigitalMode ( )
pure virtual

Get the mode for the digital trigger.

Returns
the digital trigger mode (DIO_OR/DIO_AND)

◆ getDigitalSource()

virtual M2K_TRIGGER_SOURCE_DIGITAL libm2k::M2kHardwareTrigger::getDigitalSource ( ) const
virtual

Check which is the source of the DigitalIn interface trigger event.

Returns
M2K_TRIGGER_SOURCE_DIGITAL :
SRC_TRIGGER_IN;
SRC_ANALOG_IN;
SRC_NONE;
Note
Only available from firmware v0.24.

◆ getDigitalStreamingFlag()

virtual bool libm2k::M2kHardwareTrigger::getDigitalStreamingFlag ( )
pure virtual

Get the streaming flag for the digital part.

Returns
whether the streaming is enabled (true/false)

◆ setAnalogCondition()

virtual void libm2k::M2kHardwareTrigger::setAnalogCondition ( unsigned int  chnIdx,
M2K_TRIGGER_CONDITION_ANALOG  cond 
)
pure virtual

Set the trigger condition for the analog trigger on a specific channel.

Parameters
chnIdxthe required channel
condthe specific trigger condition

◆ setAnalogDelay()

virtual void libm2k::M2kHardwareTrigger::setAnalogDelay ( int  delay)
pure virtual

Set the analog trigger delay.

Parameters
delaythe value of the analog delay
Note
the delay can have negative values The negative values are used to place the trigger inside the buffer The value of the delay represents the number of samples in buffer before the triggered sample If the value is 0, the triggered sample will be the first one in the buffer For a buffer of 1000 samples, in order to have the trigger at the middle, you need to set it to -500 The minimum negative value is -8192
the delay can have positive values TBD

◆ setAnalogExternalCondition()

virtual void libm2k::M2kHardwareTrigger::setAnalogExternalCondition ( unsigned int  chnIdx,
M2K_TRIGGER_CONDITION_DIGITAL  cond 
)
pure virtual

setAnalogExternalCondition

Parameters
chnIdx: integer - the index of the required channel
cond: M2K_TRIGGER_CONDITION_DIGITAL

◆ setAnalogExternalOutSelect()

virtual void libm2k::M2kHardwareTrigger::setAnalogExternalOutSelect ( M2K_TRIGGER_OUT_SELECT  output_select)
virtual

Select what should be redirected on the TO (trigger out) pin.
The options are (none, trigger in, digital in, analog in).
.

Parameters
output_select: of type M2K_TRIGGER_OUT_SELECT:
SELECT_TRIGGER_IN - forwards trigger events from TI pin(trigger in);
SELECT_DIGITAL_IN - forwards trigger events from DigitalIn interface;
SELECT_ANALOG_IN - forwards trigger events from AnalogIn interface;
SELECT_NONE - no trigger event is forwarded;
Note
Only available from firmware v0.24.

◆ setAnalogHysteresis()

virtual void libm2k::M2kHardwareTrigger::setAnalogHysteresis ( unsigned int  chnIdx,
double  hysteresis 
)
pure virtual

Set the analog hysteresis value for one channel.

Parameters
chnIdxthe required channel
hysteresisin Volts

◆ setAnalogLevel()

virtual void libm2k::M2kHardwareTrigger::setAnalogLevel ( unsigned int  chnIdx,
double  v_level 
)
pure virtual

Set the analog trigger level for one channel.

Parameters
chnIdxthe required channel
v_levelthe analog trigger level in volts

◆ setAnalogLevelRaw()

virtual void libm2k::M2kHardwareTrigger::setAnalogLevelRaw ( unsigned int  chnIdx,
int  level 
)
pure virtual

Set the raw analog trigger level for one channel.

Parameters
chnIdxthe required channel
levelthe raw analog trigger level

◆ setAnalogMode()

virtual void libm2k::M2kHardwareTrigger::setAnalogMode ( unsigned int  chnIdx,
M2K_TRIGGER_MODE  mode 
)
pure virtual

Set the mode for the analog trigger on a specific channel.

Parameters
chnIdxthe required channel
modethe analog trigger mode

◆ setAnalogOutTriggerCondition()

virtual void libm2k::M2kHardwareTrigger::setAnalogOutTriggerCondition ( M2K_TRIGGER_CONDITION_OUT  condition)
pure virtual

Configures the triggering condition when the source of the AnalogOut trigger event is set to TRIGGER_TI_0.

Parameters
conditionof type M2K_TRIGGER_CONDITION_OUT:
NONE_OUT - disabled;
LOW_LEVEL_OUT;
HIGH_LEVEL_OUT;
ANY_EDGE_OUT;
RISING_EDGE_OUT;
FALLING_EDGE_OUT;
Note
For the other sources this condition is ignored, the configuration is forwarded by the corresponding interface.
Only available from firmware v0.33.

◆ setAnalogOutTriggerSource()

virtual void libm2k::M2kHardwareTrigger::setAnalogOutTriggerSource ( M2K_TRIGGER_SOURCE_OUT  src)
pure virtual

Select which interface triggers the AnalogOut.

Parameters
srcof type M2K_TRIGGER_SOURCE_OUT:
TRIGGER_NONE - trigger events are disabled;
TRIGGER_TI - trigger events on the TI pin will trigger the AnalogOut interface;
TRIGGER_ADC - trigger events on the AnalogIn interface will trigger the AnalogOut interface;
TRIGGER_LA - trigger events on the DigitalIn interface will trigger the AnalogOut interface;
Note
Only available from firmware v0.33.

◆ setAnalogOutTriggerStatus()

virtual void libm2k::M2kHardwareTrigger::setAnalogOutTriggerStatus ( M2K_TRIGGER_STATUS_ANALOG_OUT  status)
pure virtual

Defines the action to be performed when a trigger event occurs.

Parameters
statusof type M2K_TRIGGER_STATUS_ANALOG_OUT:
DISABLED - no action is performed when a trigger event occurs;
START - the AnalogOut interface starts outputting samples;
STOP - the AnalogOut interface stops outputting samples;
Note
Only available from firmware v0.33.

◆ setAnalogSource()

virtual void libm2k::M2kHardwareTrigger::setAnalogSource ( M2K_TRIGGER_SOURCE_ANALOG  src)
pure virtual

Set the source of the analog trigger.

Parameters
srcanalog trigger source (channel1, channel2, etc)

◆ setAnalogSourceChannel()

virtual void libm2k::M2kHardwareTrigger::setAnalogSourceChannel ( unsigned int  chnIdx)
pure virtual

Set the channel source of the analog trigger.

Parameters
chnIdxthe index of the channel that should be used

◆ setAnalogStreamingFlag()

virtual void libm2k::M2kHardwareTrigger::setAnalogStreamingFlag ( bool  enable)
pure virtual

Set the streaming flag for the analog part.

Parameters
enablethe streaming

◆ setDigitalCondition() [1/2]

virtual void libm2k::M2kHardwareTrigger::setDigitalCondition ( unsigned int  chnIdx,
M2K_TRIGGER_CONDITION_DIGITAL  cond 
)
pure virtual

Set the trigger condition for the digital trigger on a specific channel.

Parameters
chnIdxThe index of the required channel
condthe specific trigger condition

◆ setDigitalCondition() [2/2]

virtual void libm2k::M2kHardwareTrigger::setDigitalCondition ( libm2k::digital::DIO_CHANNEL  chnIdx,
M2K_TRIGGER_CONDITION_DIGITAL  cond 
)
pure virtual

Set the trigger condition for the digital trigger on a specific channel.

Parameters
chnIdxAn enumerator corresponding to the index of the required channel
condthe specific trigger condition

◆ setDigitalDelay()

virtual void libm2k::M2kHardwareTrigger::setDigitalDelay ( int  delay)
pure virtual

Set the digital trigger delay.

Parameters
delaythe value of the digital delay
Note
the delay can have negative values The negative values are used to place the trigger inside the buffer The value of the delay represents the number of samples in buffer before the triggered sample If the value is 0, the triggered sample will be the first one in the buffer For a buffer of 1000 samples, in order to have the trigger at the middle, you need to set it to -500 The minimum negative value is -8192
the delay can have positive values TBD

◆ setDigitalExternalCondition()

virtual void libm2k::M2kHardwareTrigger::setDigitalExternalCondition ( M2K_TRIGGER_CONDITION_DIGITAL  cond)
pure virtual

setDigitalExternalCondition

Parameters
cond: M2K_TRIGGER_CONDITION_DIGITAL

◆ setDigitalMode()

virtual void libm2k::M2kHardwareTrigger::setDigitalMode ( libm2k::digital::DIO_TRIGGER_MODE  mode)
pure virtual

Set the mode for the digital trigger.

Parameters
modethe digital trigger mode (DIO_OR/DIO_AND)

◆ setDigitalSource()

virtual void libm2k::M2kHardwareTrigger::setDigitalSource ( M2K_TRIGGER_SOURCE_DIGITAL  external_src)
virtual

Select which interface triggers the DigitalIn.

Parameters
external_srcof type M2K_TRIGGER_SOURCE_DIGITAL:
SRC_TRIGGER_IN - trigger events on the TI(trigger in) pin trigger the DigitalIn interface;
SRC_ANALOG_IN - trigger events on the AnalogIn interface trigger the DigitalIn interface;
SRC_NONE - trigger events on the DigitalIn are conditioned by the internal digital trigger structure;
Note
Only available from firmware v0.24.

◆ setDigitalStreamingFlag()

virtual void libm2k::M2kHardwareTrigger::setDigitalStreamingFlag ( bool  enable)
pure virtual

Set the streaming flag for the digital part.

Parameters
enablethe streaming
Note
The digital condition needs to be set before setting the digital streaming flag to true, otherwise after setting the streaming flag to true, a trigger might occur on the old condition.