ngscopeclient 0.1-dev+51fbda87c
|
Runt trigger - trigger when a pulse of a given width crosses one threshold but not the second. More...
#include <RuntTrigger.h>
Public Types | |
enum | EdgeType { EDGE_RISING , EDGE_FALLING , EDGE_ANY } |
![]() | |
enum | Condition { CONDITION_EQUAL , CONDITION_NOT_EQUAL , CONDITION_LESS , CONDITION_LESS_OR_EQUAL , CONDITION_GREATER , CONDITION_GREATER_OR_EQUAL , CONDITION_BETWEEN , CONDITION_NOT_BETWEEN , CONDITION_ANY } |
Conditions for triggers that perform logical comparisons of values. More... | |
typedef Trigger *(* | CreateProcType) (Oscilloscope *) |
![]() | |
enum | DataLocation { LOC_CPU , LOC_GPU , LOC_DONTCARE } |
typedef std::map< std::string, FilterParameter > | ParameterMapType |
Short name for a map of strings to parameters. | |
Public Member Functions | |
RuntTrigger (Oscilloscope *scope) | |
virtual bool | ValidateChannel (size_t i, StreamDescriptor stream) override |
TRIGGER_INITPROC (RuntTrigger) | |
int64_t | GetUpperInterval () |
void | SetUpperInterval (int64_t interval) |
int64_t | GetLowerInterval () |
void | SetLowerInterval (int64_t interval) |
void | SetCondition (Condition type) |
Condition | GetCondition () |
void | SetSlope (EdgeType type) |
EdgeType | GetSlope () |
![]() | |
TwoLevelTrigger (Oscilloscope *scope) | |
Create a two-level trigger. More... | |
float | GetUpperBound () |
Gets the upper of the two trigger levels. More... | |
void | SetUpperBound (float level) |
Sets the upper trigger level. More... | |
float | GetLowerBound () |
Gets the lower of the two trigger levels. | |
void | SetLowerBound (float level) |
Sets the lower trigger level. More... | |
![]() | |
Trigger (Oscilloscope *scope) | |
Initialize a new trigger. More... | |
float | GetLevel () |
Get the trigger level. | |
void | SetLevel (float level) |
Sets the trigger level. More... | |
Oscilloscope * | GetScope () |
Gets the scope this trigger is attached to. | |
virtual std::string | GetTriggerDisplayName ()=0 |
virtual YAML::Node | SerializeConfiguration (IDTable &table) override |
Serializes this trigger's configuration to a YAML string. More... | |
![]() | |
void | DetachInputs () |
Disconnects all inputs from the node without releasing them. More... | |
size_t | GetInputCount () |
std::string | GetInputName (size_t i) |
void | SetInput (size_t i, StreamDescriptor stream, bool force=false) |
Connects a stream to the input of this node. More... | |
void | SetInput (const std::string &name, StreamDescriptor stream, bool force=false) |
virtual bool | ValidateChannel (size_t i, StreamDescriptor stream) |
StreamDescriptor | GetInput (size_t i) |
Gets the descriptor for one of our inputs. | |
FilterParameter & | GetParameter (std::string s) |
bool | HasParameter (std::string s) |
Checks if we have a parameter with a given name. More... | |
ParameterMapType::iterator | GetParamBegin () |
Returns an iterator to the beginning of our parameter map. | |
ParameterMapType::iterator | GetParamEnd () |
Returns an iterator to the end of our parameter map. | |
size_t | GetParamCount () |
Returns the number of parameter we have. | |
virtual YAML::Node | SerializeConfiguration (IDTable &table) |
Serializes this trigger's configuration to a YAML string. More... | |
virtual void | LoadParameters (const YAML::Node &node, IDTable &table) |
Load configuration from a save file. More... | |
virtual void | LoadInputs (const YAML::Node &node, IDTable &table) |
bool | IsDownstreamOf (std::set< FlowGraphNode * > nodes) |
Determines if this node is downstream of any of the specified other nodes. More... | |
virtual DataLocation | GetInputLocation () |
Gets the desired location of the nodes's input data. More... | |
virtual void | Refresh () |
Evaluates a filter graph node. More... | |
virtual void | Refresh (vk::raii::CommandBuffer &cmdBuf, std::shared_ptr< QueueHandle > queue) |
sigc::signal< void()> | signal_parametersChanged () |
sigc::signal< void()> | signal_inputsChanged () |
Static Public Member Functions | |
static std::string | GetTriggerName () |
![]() | |
static void | DoAddTriggerClass (std::string name, CreateProcType proc) |
Register a new trigger class for dynamic creation. More... | |
static void | EnumTriggers (std::vector< std::string > &names) |
Gets a list of all registered trigger types. More... | |
static Trigger * | CreateTrigger (std::string name, Oscilloscope *scope) |
Creates a new trigger for an oscilloscope. More... | |
Protected Attributes | |
std::string | m_conditionname |
std::string | m_lowerintname |
std::string | m_upperintname |
std::string | m_slopename |
![]() | |
FilterParameter & | m_lowerLevel |
Lower voltage threshold. | |
![]() | |
Oscilloscope * | m_scope |
The scope this trigger is part of. | |
FilterParameter & | m_level |
"Trigger level" parameter | |
![]() | |
std::vector< std::string > | m_signalNames |
Names of signals we take as input. | |
std::vector< StreamDescriptor > | m_inputs |
The channel (if any) connected to each of our inputs. | |
ParameterMapType | m_parameters |
sigc::signal< void()> | m_parametersChangedSignal |
Signal emitted when the set of parameters changes. | |
sigc::signal< void()> | m_inputsChangedSignal |
Signal emitted when the set of inputs changes. | |
Additional Inherited Members | |
![]() | |
typedef std::map< std::string, CreateProcType > | CreateMapType |
Helper typedef for m_createprocs. | |
![]() | |
virtual void | OnInputChanged (size_t i) |
Called when a new input is connected to the node. More... | |
WaveformBase * | GetInputWaveform (size_t i) |
Gets the waveform attached to the specified input. More... | |
SparseAnalogWaveform * | GetSparseAnalogInputWaveform (size_t i) |
Gets the analog waveform attached to the specified input. | |
UniformAnalogWaveform * | GetUniformAnalogInputWaveform (size_t i) |
Gets the analog waveform attached to the specified input. | |
SparseDigitalWaveform * | GetSparseDigitalInputWaveform (size_t i) |
Gets the digital waveform attached to the specified input. | |
UniformDigitalWaveform * | GetUniformDigitalInputWaveform (size_t i) |
Gets the digital waveform attached to the specified input. | |
SparseDigitalBusWaveform * | GetSparseDigitalBusInputWaveform (size_t i) |
Gets the digital bus waveform attached to the specified input. | |
void | CreateInput (const std::string &name) |
Creates and names an input signal. | |
std::string | GetInputDisplayName (size_t i) |
Gets the display name for one of our inputs. More... | |
![]() | |
static CreateMapType | m_createprocs |
Map of trigger type names to factory methods. | |
Runt trigger - trigger when a pulse of a given width crosses one threshold but not the second.
|
overridevirtual |
Reimplemented from FlowGraphNode.