Utils/Console: Add SENF_CONSOLE_REGISTER_ENUM 'key()' support
[senf.git] / senf / PPI / QueueingSocketSink.cti
index 1fb6bc4..c131ab7 100644 (file)
 ///////////////////////////////cti.p///////////////////////////////////////
 
 ///////////////////////////////////////////////////////////////////////////
-// senf::ppi::FIFOQueueingAlgorithm<PacketType>
+// senf::ppi::QueueingAlgorithmRegistry::RegistrationProxy<QAlgorithm>
 
-template <typename PacketType>
-prefix_ unsigned senf::ppi::FIFOQueueingAlgorithm<PacketType>::size()
-    const
+template <class QAlgorithm>
+prefix_ senf::ppi::QueueingAlgorithmRegistry::RegistrationProxy<QAlgorithm>::RegistrationProxy(std::string const & key)
 {
-    return queue_.size();
-}
+    QueueingAlgorithmRegistry::instance().registerQAlgorithm<QAlgorithm>( key);
+};
+
 
 ///////////////////////////////////////////////////////////////////////////
 // senf::ppi::module::PassiveQueueingSocketSink<Writer>
@@ -56,16 +56,16 @@ prefix_ typename Writer::Handle & senf::ppi::module::PassiveQueueingSocketSink<W
 }
 
 template <class Writer>
-prefix_ void senf::ppi::module::PassiveQueueingSocketSink<Writer>::handle(Handle handle)
+prefix_ void senf::ppi::module::PassiveQueueingSocketSink<Writer>::handle(Handle const & handle)
 {
     handle_ = handle;
+    event_.set( handle_, IOEvent::Write);
     qAlgo_->clear();
     checkThrottle();
 }
 
 template <class Writer>
-prefix_ senf::ppi::QueueingAlgorithm<typename senf::ppi::module::PassiveQueueingSocketSink<Writer>::PacketType> &
-senf::ppi::module::PassiveQueueingSocketSink<Writer>::qAlgorithm()
+prefix_ senf::ppi::QueueingAlgorithm & senf::ppi::module::PassiveQueueingSocketSink<Writer>::qAlgorithm()
 {
     return *qAlgo_;
 }