ngscopeclient v0.2
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | List of all members

A sink node is a node in the filter graph that has no outputs. More...

#include <SinkNode.h>

Inheritance diagram for SinkNode:
Inheritance graph
[legend]
Collaboration diagram for SinkNode:
Collaboration graph
[legend]

Public Member Functions

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)
 
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< InputConstraintGetInputConstraints (size_t i)
 Get the constraints on one of our inputs.
 
FilterParameterGetParameter (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 FlowGraphNodeMessageGetMostSevereMessage () 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 ()
 

Protected Member Functions

void RefreshInputNames ()
 Regenerate the list of inputs so that each port has a unique, monotonic name.
 
virtual void RemoveStream (size_t i)
 Remove a stream connected to one of our inputs but DOES NOT free the reference.
 
void ClearEmptyInputs ()
 Removes any empty spaces from m_inputs.
 
size_t GetStreamPosition (StreamDescriptor desc)
 Get the position of the provided Stream in this SinkNode.
 
void MoveStream (StreamDescriptor desc, size_t newPosition)
 Move a stream to another position in this plot.
 
- Protected Member Functions inherited from FlowGraphNode
virtual void OnInputChanged (size_t i)
 Called when a new input is connected to the node.
 
WaveformBaseGetInputWaveform (size_t i)
 Gets the waveform attached to the specified input.
 
SparseAnalogWaveformGetSparseAnalogInputWaveform (size_t i)
 Gets the analog waveform attached to the specified input.
 
UniformAnalogWaveformGetUniformAnalogInputWaveform (size_t i)
 Gets the analog waveform attached to the specified input.
 
SparseDigitalWaveformGetSparseDigitalInputWaveform (size_t i)
 Gets the digital waveform attached to the specified input.
 
UniformDigitalWaveformGetUniformDigitalInputWaveform (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.
 

Additional Inherited Members

- Public Types inherited from FlowGraphNode
enum class  ExecutionCapabilities { None = 0 , CommandBufferAppend = 1 , CommandBufferTailCall = 2 , VulkanOnly = 4 }
 
typedef std::map< std::string, FilterParameterParameterMapType
 Short name for a map of strings to parameters.
 
- 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< FlowGraphNodeMessagem_messages
 

Detailed Description

A sink node is a node in the filter graph that has no outputs.

Member Function Documentation

◆ GetStreamPosition()

size_t SinkNode::GetStreamPosition ( StreamDescriptor  desc)
protected

Get the position of the provided Stream in this SinkNode.

Parameters
descthe stream to get the position for
Returns
the position of the stream if found or the number of inputs if not

◆ MoveStream()

void SinkNode::MoveStream ( StreamDescriptor  desc,
size_t  newPosition 
)
protected

Move a stream to another position in this plot.

Parameters
descthe stream to move
newPositionthe position to move the stream to

◆ Refresh()

void SinkNode::Refresh ( vk::raii::CommandBuffer &  cmdBuf,
std::shared_ptr< QueueHandle queue 
)
overridevirtual

Implements FlowGraphNode.

◆ RemoveStream()

void SinkNode::RemoveStream ( size_t  i)
protectedvirtual

Remove a stream connected to one of our inputs but DOES NOT free the reference.

Reimplemented in WaveformArea.


The documentation for this class was generated from the following files: