// $Id$
//
// Copyright (C) 2007
-// Fraunhofer Institute for Open Communication Systems (FOKUS)
-// Competence Center NETwork research (NET), St. Augustin, GERMANY
+// 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
/** \file
\brief DVBDemuxHandles public header */
-#ifndef HH_DVBDemuxHandles_
-#define HH_DVBDemuxHandles_ 1
+#ifndef HH_SENF_Socket_Protocols_DVB_DVBDemuxHandles_
+#define HH_SENF_Socket_Protocols_DVB_DVBDemuxHandles_ 1
// Custom includes
#include "../../../Socket/FramingPolicy.hh"
#include "../../../Socket/CommunicationPolicy.hh"
#include "../../../Socket/ReadWritePolicy.hh"
#include "../../../Socket/ProtocolClientSocketHandle.hh"
-#include "DVBDemuxProtocol.hh"
+#include "DVBDemuxSocketProtocol.hh"
//#include "DVBDemuxHandles.mpp"
///////////////////////////////hh.p////////////////////////////////////////
/// @{
typedef MakeSocketPolicy<
- NoAddressingPolicy,
+ NoAddressingPolicy,
DatagramFramingPolicy,
UnconnectedCommunicationPolicy,
ReadablePolicy,
/** \brief xxx
*/
- class DVBDemuxSectionProtocol
- : public ConcreteSocketProtocol<DVBDemux_Policy>,
- public DVBDemuxProtocol
+ class DVBDemuxSectionSocketProtocol
+ : public ConcreteSocketProtocol<DVBDemux_Policy, DVBDemuxSectionSocketProtocol>,
+ public DVBDemuxSocketProtocol
{
public:
///////////////////////////////////////////////////////////////////////////
unsigned available() const;
- std::auto_ptr<SocketProtocol> clone() const;
-
///@}
- void setSectionFilter(struct dmx_sct_filter_params *filter) const;
+ void setSectionFilter(unsigned short int pid,
+ unsigned char filter,
+ unsigned int flags,
+ unsigned char mask,
+ unsigned char mode,
+ unsigned int timeout ) const;
};
- typedef ProtocolClientSocketHandle<DVBDemuxSectionProtocol> DVBDemuxSectionHandle;
+ typedef ProtocolClientSocketHandle<DVBDemuxSectionSocketProtocol> DVBDemuxSectionHandle;
// ----------------------------------------------------------------
/** \brief xxx
*/
- class DVBDemuxPESProtocol
- : public ConcreteSocketProtocol<DVBDemux_Policy>,
- public DVBDemuxProtocol
+ class DVBDemuxPESSocketProtocol
+ : public ConcreteSocketProtocol<DVBDemux_Policy,DVBDemuxPESSocketProtocol>,
+ public DVBDemuxSocketProtocol
{
public:
///////////////////////////////////////////////////////////////////////////
unsigned available() const;
- std::auto_ptr<SocketProtocol> clone() const;
-
///@}
void setPESFilter(struct dmx_pes_filter_params *filter) const;
};
- typedef ProtocolClientSocketHandle<DVBDemuxPESProtocol> DVBDemuxPESHandle;
+ typedef ProtocolClientSocketHandle<DVBDemuxPESSocketProtocol> DVBDemuxPESHandle;
// ----------------------------------------------------------------
/** \brief xxx
*/
- class DVBDvrProtocol
- : public ConcreteSocketProtocol<DVBDemux_Policy>,
- public DVBDemuxProtocol
+ class DVBDvrSocketProtocol
+ : public ConcreteSocketProtocol<DVBDemux_Policy, DVBDvrSocketProtocol>,
+ public DVBDemuxSocketProtocol
{
public:
///////////////////////////////////////////////////////////////////////////
unsigned available() const;
- std::auto_ptr<SocketProtocol> clone() const;
-
///@}
};
- typedef ProtocolClientSocketHandle<DVBDvrProtocol> DVBDvrHandle;
+ typedef ProtocolClientSocketHandle<DVBDvrSocketProtocol> DVBDvrHandle;
///@}