mf
Media Framework
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Protected Member Functions | List of all members
mf::flow::node_output Class Referenceabstract

Output port of node in flow graph. More...

#include <node.h>

Inheritance diagram for mf::flow::node_output:
mf::flow::async_node_output mf::flow::sync_node_output

Public Member Functions

 node_output (node &nd, std::ptrdiff_t index, const frame_format &)
 
virtual ~node_output ()
 
std::ptrdiff_t index () const noexcept
 
nodethis_node () const noexcept
 
void define_frame_length (std::size_t len)
 
std::size_t frame_length () const noexcept
 
void define_format (const frame_format &format)
 
const frame_formatformat () const noexcept
 
bool is_connected () const noexcept
 
node_inputconnected_input () const noexcept
 
void input_has_connected (node_input &)
 
virtual void setup ()=0
 
bool is_active () const noexcept
 
void propagate_activation (bool active)
 
Read interface, used by connected input.

Constitutes access point to the node from other nodes in graph.

virtual void pull (time_span span)=0
 
virtual timed_frame_array_view begin_read (time_unit duration)=0
 
virtual void end_read (time_unit duration)=0
 
virtual time_unit end_time () const =0
 
Write interface, used by node.

Implemented differently for different node types.

virtual frame_view begin_write_frame (time_unit &t)=0
 
virtual void end_write_frame (bool was_last_frame)=0
 
virtual void cancel_write_frame ()=0
 

Protected Member Functions

 node_output (const node_output &)=delete
 

Detailed Description

Output port of node in flow graph.

Constructor & Destructor Documentation

mf::flow::node_output::node_output ( const node_output )
protecteddelete
mf::flow::node_output::node_output ( node nd,
std::ptrdiff_t  index,
const frame_format format 
)
virtual mf::flow::node_output::~node_output ( )
inlinevirtual

Member Function Documentation

virtual timed_frame_array_view mf::flow::node_output::begin_read ( time_unit  duration)
pure virtual
virtual frame_view mf::flow::node_output::begin_write_frame ( time_unit t)
pure virtual
virtual void mf::flow::node_output::cancel_write_frame ( )
pure virtual
node_input& mf::flow::node_output::connected_input ( ) const
inlinenoexcept
void mf::flow::node_output::define_format ( const frame_format format)
inline
void mf::flow::node_output::define_frame_length ( std::size_t  len)
inline
virtual void mf::flow::node_output::end_read ( time_unit  duration)
pure virtual
virtual time_unit mf::flow::node_output::end_time ( ) const
pure virtual
virtual void mf::flow::node_output::end_write_frame ( bool  was_last_frame)
pure virtual
const frame_format& mf::flow::node_output::format ( ) const
inlinenoexcept
std::size_t mf::flow::node_output::frame_length ( ) const
inlinenoexcept
std::ptrdiff_t mf::flow::node_output::index ( ) const
inlinenoexcept
void mf::flow::node_output::input_has_connected ( node_input input)
bool mf::flow::node_output::is_active ( ) const
inlinenoexcept
bool mf::flow::node_output::is_connected ( ) const
inlinenoexcept
void mf::flow::node_output::propagate_activation ( bool  active)
virtual void mf::flow::node_output::pull ( time_span  span)
pure virtual
virtual void mf::flow::node_output::setup ( )
pure virtual
node& mf::flow::node_output::this_node ( ) const
inlinenoexcept

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