Output pins of nodes.
More...
|
using | PeekPollDataFunc |
| FileReader/Simulator peekPollData function type for nodes with more than one polling pin.
|
|
using | PinData |
| Possible Types represented by an output pin.
|
|
using | PollDataFunc |
| FileReader/Simulator pollData function type for nodes with a single poll pin.
|
|
|
bool | canCreateLink (const InputPin &other) const |
| Checks if this pin can connect to the provided pin.
|
|
bool | createLink (InputPin &endPin, ax::NodeEditor::LinkId linkId=0) |
| Creates a link from this pin to another, calling all node specific callbacks.
|
|
void | deleteLink (InputPin &endPin) |
| Disconnects the link.
|
|
void | deleteLinks () |
| Disconnects all links.
|
|
bool | isPinLinked () const |
| Checks if the pin is linked.
|
|
bool | isPinLinked (const InputPin &endPin) const |
| Checks if the pin is linked to the other pin.
|
|
OutputPin & | operator= (const OutputPin &)=delete |
| Copy assignment operator.
|
|
OutputPin & | operator= (OutputPin &&other) noexcept |
| Move assignment operator.
|
|
| OutputPin ()=default |
| Default constructor (for serialization)
|
|
| OutputPin (ax::NodeEditor::PinId id, const char *name, Type type, Node *parentNode) |
| Constructor.
|
|
| OutputPin (const OutputPin &)=delete |
| Copy constructor.
|
|
| OutputPin (OutputPin &&other) noexcept |
| Move constructor.
|
|
bool | recreateLink (InputPin &endPin) |
| Destroys and recreates a link from this pin to another.
|
|
| ~OutputPin ()=default |
| Destructor.
|
|
void | drawPinIcon (bool connected, int alpha) const |
| Draw the Pin Icon.
|
|
ImColor | getIconColor () const |
| Get the Icon Color object.
|
|
| Pin (ax::NodeEditor::PinId id, const char *name, Type type, Kind kind, Node *parentNode) |
| Constructor.
|
|
|
std::atomic< bool > | blocksConnectedNodeFromFinishing |
| Flag, whether connected nodes can finish with this pin not being finished yet (needed to make a loop with nodes)
|
|
PinData | data |
| Pointer to data (owned by this node) which is transferred over this pin.
|
|
std::condition_variable | dataAccessConditionVariable |
| Condition variable to signal that the data was read by connected nodes (used for non-flow pins)
|
|
size_t | dataAccessCounter |
| Counter for data accessing.
|
|
std::mutex | dataAccessMutex |
| Mutex to interact with the data object and also the dataAccessCounter variable.
|
|
std::vector< OutgoingLink > | links |
| Info to identify the linked pins.
|
|
std::atomic< bool > | noMoreDataAvailable |
| Flag set, when no more data is available on this pin.
|
|
std::vector< std::string > | dataIdentifier |
| One or multiple Data Identifiers (Unique name which is used for data flows)
|
|
ax::NodeEditor::PinId | id |
| Unique Id of the Pin.
|
|
Kind | kind |
| Kind of the Pin (Input/Output)
|
|
std::string | name |
| Name of the Pin.
|
|
Node * | parentNode |
| Reference to the parent node.
|
|
Type | type |
| Type of the Pin.
|
|
◆ PeekPollDataFunc
FileReader/Simulator peekPollData function type for nodes with more than one polling pin.
- First parameter is the index of the pin in the outputPins vector
- Second parameter is a boolean 'peek' This function gets called twice.
- First with 'peek = true': There an observation with a valid InsTime must be provided.
invokeCallbacks(...
should not be called.
- Second with 'peek = false': Here the message is read again and
invokeCallbacks(...)
should be called
◆ OutputPin()
NAV::OutputPin::OutputPin |
( |
ax::NodeEditor::PinId | id, |
|
|
const char * | name, |
|
|
Type | type, |
|
|
Node * | parentNode ) |
|
inline |
Constructor.
- Parameters
-
[in] | id | Unique Id of the Pin |
[in] | name | Name of the Pin |
[in] | type | Type of the Pin |
[in] | parentNode | Reference to the parent node |
◆ canCreateLink()
bool NAV::OutputPin::canCreateLink |
( |
const InputPin & | other | ) |
const |
Checks if this pin can connect to the provided pin.
- Parameters
-
[in] | other | The pin to create a link to |
- Returns
- True if it can create a link
◆ createLink()
bool NAV::OutputPin::createLink |
( |
InputPin & | endPin, |
|
|
ax::NodeEditor::LinkId | linkId = 0 ) |
Creates a link from this pin to another, calling all node specific callbacks.
- Parameters
-
[in] | endPin | Pin which should be linked to this pin |
[in] | linkId | Id of the link to create |
- Returns
- True if the link could be created
◆ deleteLink()
void NAV::OutputPin::deleteLink |
( |
InputPin & | endPin | ) |
|
Disconnects the link.
- Parameters
-
[in] | endPin | Pin which should be linked to this pin |
◆ isPinLinked() [1/2]
bool NAV::OutputPin::isPinLinked |
( |
| ) |
const |
Checks if the pin is linked.
- Returns
- True if a link exists on this pin
◆ isPinLinked() [2/2]
bool NAV::OutputPin::isPinLinked |
( |
const InputPin & | endPin | ) |
const |
Checks if the pin is linked to the other pin.
- Parameters
-
[in] | endPin | The pin to check if they are linked |
- Returns
- True if a link exists on the pins
◆ recreateLink()
bool NAV::OutputPin::recreateLink |
( |
InputPin & | endPin | ) |
|
Destroys and recreates a link from this pin to another.
- Parameters
-
[in] | endPin | Pin which should be linked to this pin |
- Returns
- True if the link could be created
The documentation for this class was generated from the following file:
- /home/runner/work/INSTINCT/INSTINCT/src/internal/Node/Pin.hpp