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
[legend]
Collaboration diagram for flow::pin< T >:
Collaboration graph
[legend]

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 > > > 
d_pipe_sp
 Shared ownership of a pipe with the pin to which this pin is connected.
 

Friends

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)
inline
Parameters
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)
inline
Parameters
oThe pin to copy.

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