minor documentation fix
[senf.git] / PPI / SocketSink.hh
index ed74d9b..00ff17d 100644 (file)
@@ -1,8 +1,8 @@
 // $Id$
 //
-// Copyright (C) 2007 
-// Fraunhofer Institute for Open Communication Systems (FOKUS) 
-// Competence Center NETwork research (NET), St. Augustin, GERMANY 
+// Copyright (C) 2007
+// 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
@@ -69,12 +69,12 @@ namespace senf {
 namespace ppi {
 namespace module {
 
-    /** \brief Output module writing data to a FileHandle using the provided Writer.
+    /** \brief Output %module writing data to a FileHandle using the provided Writer.
         If using the default ConnectedDgramWriter the filehandle must be writable, connected and 
         able to handle complete datagrams.  
         
-        This output module will write data to a FileHandle object using a given \a Writer. This
-        output module is active. This requires the file handle to be able to signal its readiness to
+        This output %module will write data to a FileHandle object using a given \a Writer. This
+        output %module is active. This requires the file handle to be able to signal its readiness to
         accept more data via the Scheduler.
 
         The default \a Writer is senf::ppi::ConnectedDgramWriter which will write out the complete packet to
@@ -87,8 +87,8 @@ namespace module {
           public:
               typedef unspecified Handle;                          // type of handle requested
 
-              SomeWriter();                                          // EITHER default constructible OR
-              SomeWriter(SomeWriter const & other);                    // copy constructible
+              SomeWriter();                                        // EITHER default constructible OR
+              SomeWriter(SomeWriter const & other);                // copy constructible
 
               void operator()(Handle handle, Packet packet);       // insertion function
           };
@@ -105,7 +105,7 @@ namespace module {
     public:
         typedef typename Writer::Handle Handle; ///< Handle type requested by writer
 
-        connector::ActiveInput input; ///< Input connector from which data is received
+        connector::ActiveInput<> input; ///< Input connector from which data is received
         
         ActiveSocketSink(Handle handle); ///< Create new writer for the given handle
                                         /**< Data will be written to \a handle using \a Writer.
@@ -120,8 +120,6 @@ namespace module {
                                                  socket */
 
         Writer & writer();                  ///< Access the Writer
-        void replaceHandle(Handle newHandle);
-                                        ///< Replace the handle to which the packets are written
     private:
         void write();
 
@@ -168,7 +166,7 @@ namespace module {
     public:
         typedef typename Writer::Handle Handle; ///< Handle type requested by writer
 
-        connector::PassiveInput input; ///< Input connector from which data is received
+        connector::PassiveInput<> input; ///< Input connector from which data is received
         
         PassiveSocketSink(Handle handle); ///< Create new writer for the given handle
                                         /**< Data will be written to \a handle using \a Writer.
@@ -180,9 +178,18 @@ namespace module {
                                              \pre Requires \a Writer to be copy constructible
                                              \param[in] handle Handle to write data to */
 
-        Writer & writer();                  ///< Access the Writer
+        Writer & writer();      ///< Access the Writer
+        Handle & handle();      /**< Access the handle. This is intendet to be mainly used to reconnect 
+                                     the underlying socket. */
+       /* void reconnect(senf::SocketAddress newAddress);
+        ///< Reconnect the handle to which the packets are written
+       */
         void replaceHandle(Handle newHandle);
-                                        ///< Replace the handle to which the packets are written
+                                        /**< Replace the handle to which the packets are written
+                                         * Normally you should access the handle and call connect with
+                                         * the new address. This also works for other 
+                                         * (active) ConnectedSocketSinks/Sources */
+                                        
     private:
         void write();