|
ngscopeclient v0.2
|
Declaration of BufferedSwitchMatrixIOChannel. More...
#include <BufferedSwitchMatrixIOChannel.h>


Public Member Functions | |
| BufferedSwitchMatrixIOChannel (const std::string &hwname, SwitchMatrix *parent, const std::string &color="#808080", size_t index=0) | |
| Initialize the channel. | |
| virtual bool | ValidateChannel (size_t i, StreamDescriptor stream) override |
| Check if a stream is allowed to be connected to the given input. | |
| virtual void | OnInputChanged (size_t i) override |
| Called when a new input is connected to the node. | |
| SwitchMatrix * | GetSwitchMatrix () |
| Gets the switch matrix this channel is part of. | |
| bool | MuxHasConfigurableThreshold () |
| Returns true if the channel has configurable input threshold. | |
| float | GetMuxInputThreshold () |
| Gets the input threshold. | |
| void | SetMuxInputThreshold (float v) |
| Sets the input port threshold voltage. | |
| bool | MuxHasConfigurableDrive () |
| Returns true if the channel has configurable output drive voltage. | |
| float | GetMuxOutputDrive () |
| Gets the output port drive voltage. | |
| void | SetMuxOutputDrive (float v) |
| Sets the output port drive voltage. | |
Public Member Functions inherited from DigitalIOChannel | |
| DigitalIOChannel (const std::string &hwname, Instrument *parent, const std::string &color="#808080", size_t index=0) | |
| Initialize a digital I/O channel. | |
| virtual void | SetDisplayName (std::string name) override |
| Sets the human-readable nickname for this channel, as displayed in the GUI. | |
| virtual PhysicalConnector | GetPhysicalConnector () override |
Public Member Functions inherited from InstrumentChannel | |
| InstrumentChannel (Instrument *inst, const std::string &hwname, const std::string &color="#808080", Unit xunit=Unit(Unit::UNIT_FS), size_t index=0) | |
| InstrumentChannel (Instrument *inst, const std::string &hwname, const std::string &color="#808080", Unit xunit=Unit(Unit::UNIT_FS), Unit yunit=Unit(Unit::UNIT_VOLTS), Stream::StreamType stype=Stream::STREAM_TYPE_ANALOG, size_t index=0) | |
| virtual std::string | GetDisplayName () |
| Gets the human-readable nickname for this channel, as displayed in the GUI. | |
| const std::string & | GetHwname () const |
| Gets the hardware name of the channel (m_hwname) | |
| size_t | GetIndex () const |
| Gets the (zero based) index of the channel. | |
| Instrument * | GetInstrument () const |
| Gets the instrument this channel is part of (if any) | |
| void | ClearCachedDisplayName () |
| Sets the display name to an empty string, causing a fetch from hardware. | |
| void | SetData (WaveformBase *pNew, size_t stream) |
| Sets the waveform data for a given stream, replacing any previous waveform. | |
| virtual Unit | GetXAxisUnits () |
| Returns the X axis unit for this channel. | |
| virtual Unit | GetYAxisUnits (size_t stream) |
| Returns the Y axis unit for a specified stream. | |
| virtual void | SetXAxisUnits (const Unit &rhs) |
| Changes the X axis unit for this channel. | |
| virtual void | SetYAxisUnits (const Unit &rhs, size_t stream) |
| Changes the X axis unit for a specified stream. | |
| Stream::StreamType | GetType (size_t stream) |
| Returns the type of a specified stream. | |
| size_t | GetStreamCount () |
| Get the number of data streams. | |
| std::string | GetStreamName (size_t stream) |
| Gets the name of a stream (for display in the UI) | |
| WaveformBase * | GetData (size_t stream) |
| Get the contents of a data stream. | |
| uint8_t | GetStreamFlags (size_t stream) |
| Get the flags of a data stream. | |
| float | GetScalarValue (size_t stream) |
| Gets the value of a scalar data stream. | |
| void | SetScalarValue (size_t stream, float value) |
| Sets the value of a scalar data stream. | |
| uint64_t | GetDigitalScalarValue (size_t stream) |
| Gets the value of a scalar data stream. | |
| uint64_t | GetDigitalWidth (size_t stream) |
| Gets the width of a digital data stream. | |
| void | SetDigitalWidth (size_t stream, uint64_t width) |
| Set the width of a digital data stream. | |
| void | SetDigitalScalarValue (size_t stream, uint64_t value) |
| Sets the value of a scalar data stream. | |
| WaveformBase * | Detach (size_t stream) |
| Detach the capture data from this channel. | |
| virtual bool | ShouldPersistWaveform () |
| Determine whether the channel's waveform(s) should be persisted to a session file. | |
| virtual DownloadState | GetDownloadState () |
| Returns the current download state of this channel. | |
| virtual float | GetDownloadProgress () |
| returns the current completion of the download (on the range [0, 1]), if not DOWNLOAD_UNKNOWN | |
| virtual double | GetDownloadStartTime () |
| returns the start time of a download, if we are DOWNLOAD_IN_PROGRESS; undefined, otherwise | |
| virtual void | Refresh (vk::raii::CommandBuffer &cmdBuf, std::shared_ptr< QueueHandle > queue) override |
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) |
| 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 YAML::Node | SerializeConfiguration (IDTable &table) |
| Serializes this trigger's configuration to a YAML string. | |
| 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 () |
Additional Inherited Members | |
Public Types inherited from InstrumentChannel | |
| enum | PhysicalConnector { CONNECTOR_BANANA_DUAL , CONNECTOR_BMA , CONNECTOR_BNC , CONNECTOR_K , CONNECTOR_K_DUAL , CONNECTOR_N , CONNECTOR_SMA } |
| enum | VisibilityMode { VIS_HIDE , VIS_AUTO , VIS_SHOW } |
| Selects how the channel should be displayed in e.g. the ngscopeclient filter graph editor. | |
| enum | DownloadState { DOWNLOAD_UNKNOWN , DOWNLOAD_NONE , DOWNLOAD_WAITING , DOWNLOAD_IN_PROGRESS , DOWNLOAD_FINISHED } |
| Enum values to be mapped to GetDownloadState() int result value for specific channel download states. More... | |
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 Attributes inherited from InstrumentChannel | |
| std::string | m_displaycolor |
| Display color (HTML hex notation with optional alpha channel: #RRGGBB or ##RRGGBBAA) | |
| enum InstrumentChannel::VisibilityMode | m_visibilityMode |
Protected Member Functions inherited from InstrumentChannel | |
| virtual void | ClearStreams () |
| Clears out any existing streams. | |
| virtual size_t | AddStream (Unit yunit, const std::string &name, Stream::StreamType stype, uint8_t flags=0) |
| Adds a new data stream to the channel. | |
Protected Member Functions inherited from FlowGraphNode | |
| 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. | |
Protected Attributes inherited from InstrumentChannel | |
| Instrument * | m_instrument |
| The instrument we're part of (may be null in the case of filters etc) | |
| std::string | m_hwname |
| Hardware name of the channel. | |
| std::string | m_displayname |
| Display name (user defined, defaults to m_hwname). | |
| size_t | m_index |
| Zero based index of the channel within the instrument. | |
| Unit | m_xAxisUnit |
| Unit of measurement for our horizontal axis (common to all streams) | |
| std::vector< Stream > | m_streams |
| Configuration data for each of our output streams. | |
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 |
Declaration of BufferedSwitchMatrixIOChannel.
An output channel of a buffered switch matrix
| BufferedSwitchMatrixIOChannel::BufferedSwitchMatrixIOChannel | ( | const std::string & | hwname, |
| SwitchMatrix * | parent, | ||
| const std::string & | color = "#808080", |
||
| size_t | index = 0 |
||
| ) |
Initialize the channel.
| hwname | Hardware name of the channel |
| parent | Switch matrix the channel is part of |
| color | Initial display color of the channel |
| index | Number of the channel |
Called when a new input is connected to the node.
The default implementation does nothing, but some special cases may find this hook useful.
For example, instrument channels may make hardware changes as soon as a new input is connected.
Reimplemented from FlowGraphNode.
Sets the input port threshold voltage.
| v | Input switching threshold, in volts |
Sets the output port drive voltage.
| v | Output drive voltage, in volts |
|
overridevirtual |
Check if a stream is allowed to be connected to the given input.
Reimplemented from FlowGraphNode.