added some documentation for PacketData
[senf.git] / Examples / DVBAdapter / ULEdec.hh
diff --git a/Examples/DVBAdapter/ULEdec.hh b/Examples/DVBAdapter/ULEdec.hh
new file mode 100644 (file)
index 0000000..bfd177f
--- /dev/null
@@ -0,0 +1,75 @@
+// $Id: ULEdec.cc 355 2007-07-26 14:17:02Z tho $
+//
+// Copyright (C) 2006
+// Fraunhofer Institut fuer offene Kommunikationssysteme (FOKUS)
+// Kompetenzzentrum fuer Satelitenkommunikation (SatCom)
+//     Stefan Bund <stefan.bund@fokus.fraunhofer.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
+// the Free Software Foundation; either version 2 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program; if not, write to the
+// Free Software Foundation, Inc.,
+// 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+
+// Definition of non-inline non-template functions
+
+#include <string>
+#include <iostream>
+#include <iomanip>
+#include <sys/ioctl.h>
+#include <linux/sockios.h>
+#include <linux/dvb/dmx.h> 
+
+#include "Scheduler/Scheduler.hh"
+#include "Packets/DefaultBundle/EthernetPacket.hh"
+#include "Packets/MPEGDVBBundle/TransportPacket.hh"
+#include "Packets/MPEGDVBBundle/SNDUPacket.hh"
+#include "Utils/membind.hh"
+#include "Socket/Protocols/DVB/DVBDemuxHandles.hh"
+#include "Packets/ParseInt.hh"
+#include "Packets/Packet.hh"
+#include "Packets/PacketData.hh"
+#include "Packets/ParseInt.hh"
+
+
+class ULEdec
+{
+public:
+    ULEdec();
+
+private:
+    senf::DVBDemuxPESHandle demuxHandle;
+    senf::DVBDvrHandle dvrHandle;
+    senf::SNDUPacket snduPacket;
+    unsigned char receiver_state;
+    unsigned char priv_tscc;
+
+    static const unsigned BLOCK_SIZE = 16;
+    
+    template <class Iterator>
+    void hexdump(Iterator i, Iterator const & i_end, std::ostream& stream);
+    
+    void handleEvent(senf::FileHandle, senf::Scheduler::EventId event);
+    
+    void handleTSPacket(senf::TransportPacket tsPacket);
+};
+
+\f
+// Local Variables:
+// mode: c++
+// fill-column: 100
+// c-file-style: "senf"
+// indent-tabs-mode: nil
+// ispell-local-dictionary: "american"
+// compile-command: "scons -u test"
+// comment-column: 40
+// End: