X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Examples%2FDVBAdapter%2FULEdec.hh;fp=Examples%2FDVBAdapter%2FULEdec.hh;h=9ec78b0847f02d820ac31a6fc592e1609109a027;hb=5331a98af6c5cc4c424b3ed834fb1498ea3d83ca;hp=bfd177f9f8e9d8ed80c6fcf15bbbc16226db3cd8;hpb=c6cd064f971bf42f49af7841550d352fc9240520;p=senf.git diff --git a/Examples/DVBAdapter/ULEdec.hh b/Examples/DVBAdapter/ULEdec.hh index bfd177f..9ec78b0 100644 --- a/Examples/DVBAdapter/ULEdec.hh +++ b/Examples/DVBAdapter/ULEdec.hh @@ -47,11 +47,22 @@ public: ULEdec(); private: + typedef senf::PacketData::iterator iterator; + + enum ReciverState { + Idle, + Reassembly + }; + senf::DVBDemuxPESHandle demuxHandle; senf::DVBDvrHandle dvrHandle; + senf::SNDUPacket snduPacket; - unsigned char receiver_state; + + ReciverState receiver_state; unsigned char priv_tscc; + bool priv_sndu_type_1; + iterator snduPacketData_iter; static const unsigned BLOCK_SIZE = 16; @@ -61,6 +72,11 @@ private: void handleEvent(senf::FileHandle, senf::Scheduler::EventId event); void handleTSPacket(senf::TransportPacket tsPacket); + + iterator readNewSNDUPacket(iterator i_start, iterator i_end); + iterator readContSNDUPacket(iterator i_start, iterator i_end); + iterator readRawSNDUPacketData(iterator i_start, iterator i_end); + };