+// $Id$
+//
// Copyright (C) 2007
-// Fraunhofer Institut fuer offene Kommunikationssysteme (FOKUS)
-// Kompetenzzentrum fuer Satelitenkommunikation (SatCom)
+// Fraunhofer Institute for Open Communication Systems (FOKUS)
+// Competence Center NETwork research (NET), St. Augustin, GERMANY
// Stefan Bund <g0dil@berlios.de>
//
// This program is free software; you can redistribute it and/or modify
{
public:
typedef unspecified Handle; // type of handle requested
- SomeSink(); // default constructible
+
+ SomeSink(); // EITHER default constructible OR
+ SomeSink(SomeSink const & other); // copy constructible
+
void operator()(Handle handle, Packet packet); // insertion function
};
\endcode
ActiveSocketSink(Handle handle); ///< Create new writer for the given handle
/**< Data will be written to \a handle using \a Sink.
+ \pre Requires \a Sink to be default constructible
\param[in] handle Handle to write data to */
+ ActiveSocketSink(Handle handle, Sink const & sink);
+ ///< Create new writer for the given handle
+ /**< Data will be written to \a handle using \a Sink.
+ \pre Requires \a Sink to be copy constructible
+ \param[in] handle Handle to write data to
+ \param[in] sink Sink helper writing packet date to the
+ socket */
+
+ Sink & sink(); ///< Access the sink helper
+
private:
void write();
{
public:
typedef unspecified Handle; // type of handle requested
- SomeSink(); // default constructible
+
+ SomeSink(); // EITHER default constructible
+ SomeSink(SomeSink const & other); // OR copy constructible
+
void operator()(Handle handle, Packet packet); // insertion function
};
\endcode
PassiveSocketSink(Handle handle); ///< Create new writer for the given handle
/**< Data will be written to \a handle using \a Sink.
+ \pre Requires \a Sink to be default constructible
\param[in] handle Handle to write data to */
+ PassiveSocketSink(Handle handle, Sink const & sink);
+ ///< Create new writer for the given handle
+ /**< Data will be written to \a handle using \a Sink.
+ \pre Requires \a Sink to be copy constructible
+ \param[in] handle Handle to write data to */
+
+ Sink & sink(); ///< Access the sink helper
private:
void write();
///////////////////////////////hh.e////////////////////////////////////////
#include "SocketSink.cci"
#include "SocketSink.ct"
-//#include "SocketSink.cti"
+#include "SocketSink.cti"
#endif
\f