|
ngscopeclient v0.2
|
Abstract base class for oscilloscope / logic analyzer trigger inputs. More...
#include <Trigger.h>


Public Types | |
| 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 *) |
Public Types inherited from FlowGraphNode | |
| enum class | ExecutionCapabilities { None = 0 , CommandBufferAppend = 1 , CommandBufferTailCall = 2 , VulkanOnly = 4 } |
| typedef std::map< std::string, FilterParameter > | ParameterMapType |
| Short name for a map of strings to parameters. | |
Public Member Functions | |
| Trigger (Oscilloscope *scope) | |
| Initialize a new trigger. | |
| virtual void | Refresh (vk::raii::CommandBuffer &cmdBuf, std::shared_ptr< QueueHandle > queue) override |
| float | GetLevel () |
| Get the trigger level. | |
| float | GetUpperLevel () |
| void | SetLevel (float level) |
| Sets the trigger level. | |
| void | SetUpperLevel (float level) |
| 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. | |
Public Member Functions inherited from FlowGraphNode | |
| void | DetachInputs () |
| Disconnects all inputs from the node without releasing them. | |
| size_t | GetInputCount () |
| Get the number of input ports. | |
| 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. | |
| void | SetInput (const std::string &name, StreamDescriptor stream, bool force=false) |
| virtual bool | ValidateChannel (size_t i, StreamDescriptor stream) |
| Check if a stream is allowed to be connected to the given input. | |
| bool | HasInput (StreamDescriptor desc) |
| Checks if the given stream is connected to at least one of our inputs. | |
| StreamDescriptor | GetInput (size_t i) |
| Gets the descriptor for one of our inputs. | |
| std::shared_ptr< InputConstraint > | GetInputConstraints (size_t i) |
| Get the constraints on one of our inputs. | |
| FilterParameter & | GetParameter (std::string s) |
| bool | HasParameter (std::string s) |
| Checks if we have a parameter with a given name. | |
| 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 void | LoadParameters (const YAML::Node &node, IDTable &table) |
| Load configuration from a save file. | |
| 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. | |
| virtual uint32_t | GetExecutionCapabilitiesMask () |
| Returns a bitmask of ExecutionCapabilities fields. | |
| bool | HasMessages () const |
| Checks if this graph has any messages. | |
| const std::vector< FlowGraphNodeMessage > & | GetMessages () const |
| Walking through any messages. | |
| const FlowGraphNodeMessage * | GetMostSevereMessage () const |
| void | AddSink (size_t stream, FlowGraphNode *node) |
| void | RemoveSink (size_t stream, FlowGraphNode *node) |
| const std::set< FlowGraphNode * > & | GetSinks (size_t stream) |
| sigc::signal< void()> | signal_parametersChanged () |
| sigc::signal< void()> | signal_inputsChanged () |
Static Public Member Functions | |
| static void | DoAddTriggerClass (std::string name, CreateProcType proc) |
| Register a new trigger class for dynamic creation. | |
| static void | EnumTriggers (std::vector< std::string > &names) |
| Gets a list of all registered trigger types. | |
| static Trigger * | CreateTrigger (std::string name, Oscilloscope *scope) |
| Creates a new trigger for an oscilloscope. | |
Protected Types | |
| typedef std::map< std::string, CreateProcType > | CreateMapType |
| Helper typedef for m_createprocs. | |
Protected Attributes | |
| Oscilloscope * | m_scope |
| The scope this trigger is part of. | |
| FilterParameter & | m_level |
| "Trigger level" parameter | |
| FilterParameter & | m_triggerLevel |
| FilterParameter & | m_upperLevel |
Protected Attributes inherited from FlowGraphNode | |
| std::vector< std::shared_ptr< InputDescriptor > > | m_inputs |
| Input ports. | |
| std::vector< std::set< FlowGraphNode * > > | m_sinks |
| The nodes (if any) that each of our streams drives. | |
| 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. | |
| std::vector< FlowGraphNodeMessage > | m_messages |
Static Protected Attributes | |
| static CreateMapType | m_createprocs |
| Map of trigger type names to factory methods. | |
Additional Inherited Members | |
Protected Member Functions inherited from FlowGraphNode | |
| virtual void | OnInputChanged (size_t i) |
| Called when a new input is connected to the node. | |
| WaveformBase * | GetInputWaveform (size_t i) |
| Gets the waveform attached to the specified input. | |
| 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. | |
| virtual void | CreateInput (const std::string &name) |
| Gets the digital bus waveform attached to the specified input. | |
| template<class T , class... Args> | |
| void | CreateInput (const std::string &name, Args &&... args) |
| std::string | GetInputDisplayName (size_t i) |
| Gets the display name for one of our inputs. | |
| void | ClearMessages () |
| Remove any messages left over from the last graph refresh. | |
| void | AddMessage (const FlowGraphNodeMessage &msg) |
| Attach a new message to the node. | |
| void | AddMessage (Severity severity, const std::string &title, const std::string &message) |
| Attach a new message to the node. | |
| void | AddErrorMessage (const std::string &err) |
| Add a new error message. | |
| void | AddErrorMessage (const std::string &title, const std::string &err) |
| Add a new error message with a title. | |
Abstract base class for oscilloscope / logic analyzer trigger inputs.
Conditions for triggers that perform logical comparisons of values.
| Trigger::Trigger | ( | Oscilloscope * | scope | ) |
Initialize a new trigger.
| scope | The scope this trigger is attached to |
|
static |
Creates a new trigger for an oscilloscope.
| name | Name of the desired trigger |
| scope | The scope to create the trigger for |
|
static |
Register a new trigger class for dynamic creation.
Do not call this function directly, use the AddTriggerClass macro
| name | Name of the trigger class |
| proc | Factory method |
|
static |
Gets a list of all registered trigger types.
| [out] | names | List of known triggers |
|
overridevirtual |
Implements FlowGraphNode.
|
overridevirtual |
Serializes this trigger's configuration to a YAML string.
Reimplemented from FlowGraphNode.