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.
|
|
Output pins of nodes.
Definition at line 337 of file Pin.hpp.
◆ 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
Definition at line 442 of file Pin.hpp.
◆ PinData
Possible Types represented by an output pin.
Definition at line 448 of file Pin.hpp.
◆ PollDataFunc
FileReader/Simulator pollData function type for nodes with a single poll pin.
Definition at line 445 of file Pin.hpp.
◆ OutputPin() [1/4]
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 |
Definition at line 345 of file Pin.hpp.
◆ OutputPin() [2/4]
NAV::OutputPin::OutputPin |
( |
| ) |
|
|
default |
Default constructor (for serialization)
◆ ~OutputPin()
NAV::OutputPin::~OutputPin |
( |
| ) |
|
|
default |
◆ OutputPin() [3/4]
NAV::OutputPin::OutputPin |
( |
const OutputPin & | | ) |
|
|
delete |
◆ OutputPin() [4/4]
NAV::OutputPin::OutputPin |
( |
OutputPin && | other | ) |
|
|
inlinenoexcept |
Move constructor.
Definition at line 355 of file Pin.hpp.
◆ canCreateLink()
bool NAV::OutputPin::canCreateLink |
( |
const InputPin & | other | ) |
const |
|
nodiscard |
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
Definition at line 239 of file Pin.cpp.
◆ connect()
void NAV::OutputPin::connect |
( |
NAV::InputPin & | endPin, |
|
|
ax::NodeEditor::LinkId | linkId = 0 ) |
|
private |
Connects this pin to another.
- Parameters
-
[in] | endPin | Pin which should be linked to this pin |
[in] | linkId | Id of the link to create |
Definition at line 287 of file Pin.cpp.
◆ 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
Definition at line 257 of file Pin.cpp.
◆ deleteLink()
void NAV::OutputPin::deleteLink |
( |
InputPin & | endPin | ) |
|
Disconnects the link.
- Parameters
-
[in] | endPin | Pin which should be linked to this pin |
Definition at line 267 of file Pin.cpp.
◆ deleteLinks()
void NAV::OutputPin::deleteLinks |
( |
| ) |
|
Disconnects all links.
Definition at line 272 of file Pin.cpp.
◆ disconnect()
void NAV::OutputPin::disconnect |
( |
InputPin & | endPin | ) |
|
|
private |
Disconnects the link.
- Parameters
-
[in] | endPin | Pin which should be disconnected from this pin |
Definition at line 319 of file Pin.cpp.
◆ isPinLinked() [1/2]
bool NAV::OutputPin::isPinLinked |
( |
| ) |
const |
|
nodiscard |
Checks if the pin is linked.
- Returns
- True if a link exists on this pin
Definition at line 244 of file Pin.cpp.
◆ isPinLinked() [2/2]
bool NAV::OutputPin::isPinLinked |
( |
const InputPin & | endPin | ) |
const |
|
nodiscard |
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
Definition at line 249 of file Pin.cpp.
◆ operator=() [1/2]
Copy assignment operator.
◆ operator=() [2/2]
Move assignment operator.
Definition at line 365 of file Pin.hpp.
◆ 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
Definition at line 262 of file Pin.cpp.
◆ InputPin
◆ Pin
◆ blocksConnectedNodeFromFinishing
std::atomic<bool> NAV::OutputPin::blocksConnectedNodeFromFinishing |
Flag, whether connected nodes can finish with this pin not being finished yet (needed to make a loop with nodes)
Definition at line 473 of file Pin.hpp.
◆ data
Pointer to data (owned by this node) which is transferred over this pin.
Definition at line 458 of file Pin.hpp.
◆ dataAccessConditionVariable
std::condition_variable NAV::OutputPin::dataAccessConditionVariable |
Condition variable to signal that the data was read by connected nodes (used for non-flow pins)
Definition at line 467 of file Pin.hpp.
◆ dataAccessCounter
size_t NAV::OutputPin::dataAccessCounter |
Counter for data accessing.
Definition at line 464 of file Pin.hpp.
◆ dataAccessMutex
std::mutex NAV::OutputPin::dataAccessMutex |
Mutex to interact with the data object and also the dataAccessCounter variable.
Definition at line 461 of file Pin.hpp.
◆ links
Info to identify the linked pins.
Definition at line 433 of file Pin.hpp.
◆ noMoreDataAvailable
std::atomic<bool> NAV::OutputPin::noMoreDataAvailable |
Flag set, when no more data is available on this pin.
Definition at line 470 of file Pin.hpp.
The documentation for this class was generated from the following files:
- /home/runner/work/INSTINCT/INSTINCT/src/internal/Node/Pin.hpp
- /home/runner/work/INSTINCT/INSTINCT/src/internal/Node/Pin.cpp