ngscopeclient 0.1-dev+51fbda87c
|
A trigger group is a set of oscilloscopes that all trigger in lock-step. More...
#include <TriggerGroup.h>
Public Types | |
enum | TriggerType { TRIGGER_TYPE_SINGLE , TRIGGER_TYPE_FORCED , TRIGGER_TYPE_AUTO , TRIGGER_TYPE_NORMAL } |
Public Member Functions | |
TriggerGroup (std::shared_ptr< Oscilloscope > primary, Session *session) | |
void | RemoveScope (std::shared_ptr< Oscilloscope > scope) |
void | RemoveFilter (PausableFilter *f) |
void | MakePrimary (std::shared_ptr< Oscilloscope > scope) |
Make a scope (which must currently be a secondary) the primary. | |
void | AddSecondary (std::shared_ptr< Oscilloscope > scope) |
Adds a secondary scope to this group. | |
void | AddFilter (PausableFilter *f) |
void | Arm (TriggerType type) |
Arm the trigger for the group. | |
void | Stop () |
Stop the trigger for the group. More... | |
bool | CheckForPendingWaveforms () |
Return true if all of the scopes in the group have triggered. | |
void | DownloadWaveforms () |
Grab waveforms from the group. | |
void | RearmIfMultiScope () |
bool | empty () |
bool | HasScopes () |
bool | HasSecondaries () |
std::string | GetDescription () |
Public Attributes | |
std::shared_ptr< Oscilloscope > | m_primary |
std::vector< std::shared_ptr< Oscilloscope > > | m_secondaries |
std::vector< PausableFilter * > | m_filters |
bool | m_default |
True if we should be activated when the start/stop toolbar button is clicked. | |
Protected Member Functions | |
void | DetachAllWaveforms (std::shared_ptr< Oscilloscope > scope) |
Protected Attributes | |
Session * | m_session |
bool | m_multiScopeFreeRun |
True if we have multiple scopes and are in normal trigger mode. | |
A trigger group is a set of oscilloscopes that all trigger in lock-step.
One instrument, designated "primary", is used as the trigger reference for all other scopes in the group ("secondaries").
Mandatory external connection: Trigger out of primary to trigger in of each secondary Cable lengths need not be matched, the dewskew wizard will measure and calibrate out the trigger path delay
Strongly recommended external connection: Common reference clock supplied to all instruments in the group If instruments do not share a common clock, drift will worsen with increasing capture depth
void TriggerGroup::Stop | ( | ) |
Stop the trigger for the group.
Clear out any pending data (the user doesn't want it, and we don't want stale stuff hanging around)