29 #ifndef STEAM_PLAY_OUTPUT_SLOT_CONNECTION_H 30 #define STEAM_PLAY_OUTPUT_SLOT_CONNECTION_H 95 virtual bool isTimely (FrameID,
TimeValue) =0;
99 virtual void shutDown () =0;
160 Connections connections_;
169 REQUIRE (this->isActive());
170 return lib::iter_source::transform (eachElm(connections_), connectOutputSink);
174 getTimingConstraints()
176 UNIMPLEMENTED (
"find out about timing constraints");
182 return 0 < connections_.size();
186 access (uint chanNr)
const 188 return connections_[chanNr];
197 connections_.
populate_by (&ConnectionManager::buildConnection,
this);
200 typedef typename Connections::ElementHolder& ConnectionStorage;
204 virtual void buildConnection(ConnectionStorage) =0;
208 : connections_(numChannels)
221 connectOutputSink (CON& connection)
223 TRACE (
test,
"activating Con=%p", &connection );
226 newSink.
activate(&connection, shutdownConnection);
An (abstract) capability to send media data to an external output.
Generic frame timing specification.
Any copy and copy construction prohibited.
Maintaining a list of active connections.
denotes an opened connection ready to receive media data for output.
Steam-Layer implementation namespace root.
void populate_by(CTOR builder)
init all elements at once, invoking a builder functor for each.
Managing a collection of non-copyable polymorphic objects in compact storage.
Mix-Ins to allow or prohibit various degrees of copying and cloning.
Base for OutputSlot standard implementation.
Extension point for Implementation.
_SeqT< CON >::Range eachElm(CON &coll)
Lumiera error handling (C++ interface).
Interface: Generic output sink.
Handle for a buffer for processing data, abstracting away the actual implementation.
Handle & activate(IMP *impl, DEL whenDead)
Activation of the handle by the managing service.
A generic opaque handle to an implementation entity, including lifecycle management.
Preconfigured adapters for some STL container standard usage situations.
Extension module to build an opaque data source, accessible as Lumiera Forward Iterator.
basic constant internal time value.