// $Id$
//
// Copyright (C) 2007
-// Fraunhofer Institut fuer offene Kommunikationssysteme (FOKUS)
-// Kompetenzzentrum fuer Satelitenkommunikation (SatCom)
-// Stefan Bund <stefan.bund@fokus.fraunhofer.de>
+// Fraunhofer Institute for Open Communication Systems (FOKUS)
+// Competence Center NETwork research (NET), St. Augustin, GERMANY
+// Thorsten Horstmann <tho@berlios.de>
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
#define HH_DVBDemuxHandles_ 1
// Custom includes
-#include "Socket/BufferingPolicy.hh"
-#include "Socket/FramingPolicy.hh"
-#include "Socket/CommunicationPolicy.hh"
-#include "Socket/ReadWritePolicy.hh"
-#include "Socket/ProtocolClientSocketHandle.hh"
+#include "../../../Socket/FramingPolicy.hh"
+#include "../../../Socket/CommunicationPolicy.hh"
+#include "../../../Socket/ReadWritePolicy.hh"
+#include "../../../Socket/ProtocolClientSocketHandle.hh"
#include "DVBDemuxProtocol.hh"
//#include "DVBDemuxHandles.mpp"
/// @{
typedef MakeSocketPolicy<
- NoAddressingPolicy,
+ NoAddressingPolicy,
DatagramFramingPolicy,
UnconnectedCommunicationPolicy,
ReadablePolicy,
- NotWriteablePolicy,
- NoBufferingPolicy
+ NotWriteablePolicy
>::policy DVBDemux_Policy; ///< Socket Policy for xxxx
/** \brief xxx
*/
class DVBDemuxSectionProtocol
- : public ConcreteSocketProtocol<DVBDemux_Policy>,
+ : public ConcreteSocketProtocol<DVBDemux_Policy, DVBDemuxSectionProtocol>,
public DVBDemuxProtocol
{
public:
///\name Constructors
///@{
- void init_client() const; ///< xxx
+ void init_client(unsigned short adapter=0, unsigned short device=0) const; ///< xxx
/**< \note This member is implicitly called from the
ProtocolClientSocketHandle::ProtocolClientSocketHandle()
constructor */
unsigned available() const;
- std::auto_ptr<SocketProtocol> clone() const;
-
///@}
void setSectionFilter(struct dmx_sct_filter_params *filter) const;
/** \brief xxx
*/
class DVBDemuxPESProtocol
- : public ConcreteSocketProtocol<DVBDemux_Policy>,
+ : public ConcreteSocketProtocol<DVBDemux_Policy,DVBDemuxPESProtocol>,
public DVBDemuxProtocol
{
public:
///\name Constructors
///@{
- void init_client() const; ///< xxx
+ void init_client(unsigned short adapter=0, unsigned short device=0) const; ///< xxx
/**< \note This member is implicitly called from the
ProtocolClientSocketHandle::ProtocolClientSocketHandle()
constructor */
unsigned available() const;
- std::auto_ptr<SocketProtocol> clone() const;
-
///@}
void setPESFilter(struct dmx_pes_filter_params *filter) const;
/** \brief xxx
*/
class DVBDvrProtocol
- : public ConcreteSocketProtocol<DVBDemux_Policy>,
+ : public ConcreteSocketProtocol<DVBDemux_Policy, DVBDvrProtocol>,
public DVBDemuxProtocol
{
public:
///\name Constructors
///@{
- void init_client() const; ///< xxx
+ void init_client(unsigned short adapter=0, unsigned short device=0) const; ///< xxx
/**< \note This member is implicitly called from the
ProtocolClientSocketHandle::ProtocolClientSocketHandle()
constructor */
unsigned available() const;
- std::auto_ptr<SocketProtocol> clone() const;
-
///@}
};