X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Packets%2FDataPacket.hh;h=fc8cd048f9a6a304cc9ce02631a5b43e9dfd76e4;hb=a1fdb7bb122f0b05be809a922d4b7ef5e125fa67;hp=fe1bc68619183153285390bac610880cc62b878b;hpb=145f6a7d0f3a6aaa77b3625351c952d24cb0b8a1;p=senf.git diff --git a/Packets/DataPacket.hh b/Packets/DataPacket.hh index fe1bc68..fc8cd04 100644 --- a/Packets/DataPacket.hh +++ b/Packets/DataPacket.hh @@ -1,9 +1,9 @@ // $Id$ // -// Copyright (C) 2006 -// Fraunhofer Institut fuer offene Kommunikationssysteme (FOKUS) -// Kompetenzzentrum fuer Satelitenkommunikation (SatCom) -// Stefan Bund +// Copyright (C) 2007 +// Fraunhofer Institute for Open Communication Systems (FOKUS) +// Competence Center NETwork research (NET), St. Augustin, GERMANY +// Stefan Bund // // 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 @@ -20,65 +20,59 @@ // Free Software Foundation, Inc., // 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -#ifndef HH_DataPacket_ -#define HH_DataPacket_ 1 +/** \file + \brief DataPacket public header */ + +#ifndef HH_SENF_Packets_DataPacket_ +#define HH_SENF_Packets_DataPacket_ 1 // Custom includes +#include "PacketType.hh" #include "Packet.hh" +//#include "DataPacket.mpp" ///////////////////////////////hh.p//////////////////////////////////////// namespace senf { + /** \brief Generic payload-only packet + + \par Packet type (typedef): + \ref DataPacket - /** \brief Non-interpreted Packet + DataPacket is a simple generic packet with just a payload of uninterpreted data. This is the + packet used whenever no more specific packet type can be found for a sub-packet (e.g. as the + payload data of a UDP packet) - A DataPacket is an uninterpreted blob of data. It is terminal - in the sense, that no further packet header may follow after - this packet. A DataPacket implements the abstract Packet - interface and nothing more. + \ingroup packet_module */ - class DataPacket : public Packet + struct DataPacketType : public PacketTypeBase { - public: - /////////////////////////////////////////////////////////////////////////// - // Types - - typedef ptr_t::ptr ptr; - typedef iterator byte_iterator; - - /////////////////////////////////////////////////////////////////////////// - - static void init() {} - static bool check(iterator const & b, iterator const & e) { return true; } - - private: - template - DataPacket(Arg const & arg); - - virtual void v_nextInterpreter() const; - virtual void v_finalize(); - virtual void v_dump(std::ostream & os) const; - - friend class Packet; + typedef ConcretePacket packet; + static void dump(packet p, std::ostream & os); }; - + /** \brief Generic payload-only packet typedef */ + typedef ConcretePacket DataPacket; } ///////////////////////////////hh.e//////////////////////////////////////// +#endif +#if !defined(HH_SENF_Packets_Packets__decls_) && !defined(HH_SENF_Packets_DataPacket_impl_) +#define HH_SENF_Packets_DataPacket_impl_ //#include "DataPacket.cci" //#include "DataPacket.ct" -#include "DataPacket.cti" +//#include "DataPacket.cti" #endif // Local Variables: // mode: c++ // fill-column: 100 +// comment-column: 40 // c-file-style: "senf" // indent-tabs-mode: nil // ispell-local-dictionary: "american" // compile-command: "scons -u test" -// comment-column: 40 // End: +