Socket: Move protocol into the socket body (as private base class) and allow non...
[senf.git] / Socket / Protocols / DVB / DVBDemuxHandles.hh
index 59fd81a..6d521c7 100644 (file)
@@ -52,7 +52,7 @@ namespace senf {
     /** \brief xxx
      */
     class DVBDemuxSectionProtocol
-        : public ConcreteSocketProtocol<DVBDemux_Policy>,
+        : public ConcreteSocketProtocol<DVBDemux_Policy, DVBDemuxSectionProtocol>,
           public DVBDemuxProtocol
     {
     public:
@@ -73,8 +73,6 @@ namespace senf {
         
         unsigned available() const;
 
-        std::auto_ptr<SocketProtocol> clone() const;
-
         ///@}
         
         void setSectionFilter(struct dmx_sct_filter_params *filter) const;    
@@ -87,7 +85,7 @@ namespace senf {
     /** \brief xxx
      */
     class DVBDemuxPESProtocol
-        : public ConcreteSocketProtocol<DVBDemux_Policy>,
+        : public ConcreteSocketProtocol<DVBDemux_Policy,DVBDemuxPESProtocol>,
           public DVBDemuxProtocol
     {
     public:
@@ -108,8 +106,6 @@ namespace senf {
         
         unsigned available() const;
 
-        std::auto_ptr<SocketProtocol> clone() const;
-
         ///@}
         
         void setPESFilter(struct dmx_pes_filter_params *filter) const;    
@@ -124,7 +120,7 @@ namespace senf {
     /** \brief xxx
          */
     class DVBDvrProtocol
-        : public ConcreteSocketProtocol<DVBDemux_Policy>,
+        : public ConcreteSocketProtocol<DVBDemux_Policy, DVBDvrProtocol>,
           public DVBDemuxProtocol
     {
     public:
@@ -145,8 +141,6 @@ namespace senf {
         
         unsigned available() const;
 
-        std::auto_ptr<SocketProtocol> clone() const;
-        
         ///@}
      };