Lumiera 0.pre.04
»edit your freedom«
Loading...
Searching...
No Matches
DataSink Class Reference

#include "steam/play/output-slot.hpp"

Description

denotes an opened connection ready to receive media data for output.

Each DataSink (handle) corresponds to an OutputSlot::Connection entry. Data is handed over frame wise in a two-phase protocol: first, the client gets exclusive access to an output buffer, and then, when done, the buffer is handed over by an emit call.

Definition at line 159 of file output-slot.hpp.

Public Member Functions

BuffHandle lockBufferFor (FrameID)
 
void emit (FrameID, BuffHandle const &, TimeValue currentTime=Time::ANYTIME)
 
- Public Member Functions inherited from Handle< OutputSlot::Connection >
 Handle ()=default
 by default create an Null handle.
 
 Handle (OutputSlot::Connection *imp)
 directly establish handle from an implementation, which typically way just heap allocated beforehand.
 
 Handle (Handle const &r)=default
 
 Handle (Handle &&rr)=default
 
 Handle (shared_ptr< Y > const &r)
 
 Handle (shared_ptr< Y > &&srr)
 
 Handle (weak_ptr< Y > const &wr)
 
 Handle (unique_ptr< Y > &&urr)
 
Handleoperator= (Handle const &r)=default
 
Handleoperator= (Handle &&rr)=default
 
Handleoperator= (shared_ptr< Y > const &sr)
 
Handleoperator= (shared_ptr< Y > &&srr)
 
Handleoperator= (unique_ptr< Y > &&urr)
 
 operator bool () const
 
bool isValid () const
 
Handleactivate (OutputSlot::Connection *impl, DEL whenDead)
 Activation of the handle by the managing service.
 
Handleactivate (shared_ptr< OutputSlot::Connection > const &impl)
 another way of activating a handle by sharing ownership with an existing smart-ptr
 
Handleactivate (shared_ptr< OutputSlot::Connection > &&impl)
 
void close ()
 deactivate this handle, so it isn't tied any longer to the associated implementation or service object.
 

Friends

bool operator== (DataSink const &sink1, DataSink const &sink2)
 
bool operator!= (DataSink const &sink1, DataSink const &sink2)
 

Additional Inherited Members

- Protected Types inherited from Handle< OutputSlot::Connection >
typedef std::shared_ptr< OutputSlot::Connection > SmPtr
 
- Protected Member Functions inherited from Handle< OutputSlot::Connection >
OutputSlot::Connection & impl () const
 
- Protected Attributes inherited from Handle< OutputSlot::Connection >
SmPtr smPtr_
 

Member Function Documentation

◆ lockBufferFor()

BuffHandle lockBufferFor ( FrameID  frameNr)

Definition at line 95 of file output-slot.cpp.

Referenced by OutputSlotProtocol_test::verifyStandardCase().

+ Here is the caller graph for this function:

◆ emit()

void emit ( FrameID  frameNr,
BuffHandle const &  data2emit,
TimeValue  currentTime = Time::ANYTIME 
)

Definition at line 102 of file output-slot.cpp.

References OutputSlot::Connection::discard(), OutputSlot::Connection::isTimely(), and OutputSlot::Connection::transfer().

Referenced by OutputSlotProtocol_test::verifyStandardCase().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Friends And Related Symbol Documentation

◆ operator==

bool operator== ( DataSink const &  sink1,
DataSink const &  sink2 
)
friend

Definition at line 168 of file output-slot.hpp.

◆ operator!=

bool operator!= ( DataSink const &  sink1,
DataSink const &  sink2 
)
friend

Definition at line 174 of file output-slot.hpp.

+ Inheritance diagram for DataSink:
+ Collaboration diagram for DataSink:

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