flow  3.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Pages
Public Member Functions | Protected Attributes | Friends | List of all members
flow::pin< T > Class Template Reference

Base class for a node's inlet or outlet. More...

#include <node.h>

Inheritance diagram for flow::pin< T >:
Inheritance graph
Collaboration diagram for flow::pin< T >:
Collaboration graph

Public Member Functions

 pin (const std::string &name_r)
 pin (const pin< T > &o)
virtual void disconnect ()
 Disconnects this pin from its pipe.
- Public Member Functions inherited from flow::named
 named (const std::string &name_r)
 Constructor the takes a name.
 named (named &&name_rr)
 Move constructor.
 named (const named &name_r)
 Copy constructor.
virtual const std::string & name () const
 A const reference to this object's name.
virtual std::string rename (const std::string &name_r)
 Sets this object's name to a new name.

Protected Attributes

std::shared_ptr< std::pair
< pipe< T >, std::unique_ptr
< std::mutex > > > 
 Shared ownership of a pipe with the pin to which this pin is connected.


class outpin< T >

Detailed Description

template<typename T>
class flow::pin< T >

Base class for a node's inlet or outlet.

Pins are connected to one another through pipes. Even when one pin is disconnected, the pipe remains attached to the remaining pin to mimize packet loss.

Constructor & Destructor Documentation

template<typename T>
flow::pin< T >::pin ( const std::string &  name_r)
name_rThe name of this pin. This will be typically generated from the name of the owning node.
template<typename T>
flow::pin< T >::pin ( const pin< T > &  o)
oThe pin to copy.

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