// $Id$
//
// Copyright (C) 2006
-// 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 EthernetPacket public header */
-#ifndef HH_EthernetPacket_
-#define HH_EthernetPacket_ 1
+#ifndef HH_SENF_Packets_DefaultBundle_EthernetPacket_
+#define HH_SENF_Packets_DefaultBundle_EthernetPacket_ 1
// Custom includes
#include <algorithm>
\ref PacketRegistry
*/
struct EtherTypes {
- // See
typedef boost::uint16_t key_t;
};
\par Fields:
\ref EthernetPacketParser
+ \image html EthernetPacket.png
\par Associated registries:
\ref EtherTypes
{
#ifndef DOXYGEN
typedef PacketTypeMixin<EthernetPacketType, EtherTypes> mixin;
+#endif
typedef ConcretePacket<EthernetPacketType> packet;
typedef EthernetPacketParser parser;
-#endif
+
using mixin::nextPacketRange;
using mixin::initSize;
using mixin::init;
static factory_t nextPacketType(packet p);
- static void dump(packet p, std::ostream & os);
+ /// Dump given EthernetPacket in readable form to given output stream
+ static void dump(packet p, std::ostream & os);
static void finalize(packet p);
};
\par Fields:
\ref EthVLanPacketParser
-
+ \image html EthVLanPacket.png
+
\par Associated registries:
\ref EtherTypes
{
#ifndef DOXYGEN
typedef PacketTypeMixin<EthVLanPacketType, EtherTypes> mixin;
+#endif
typedef ConcretePacket<EthVLanPacketType> packet;
typedef EthVLanPacketParser parser;
-#endif
+
using mixin::nextPacketRange;
using mixin::nextPacketType;
using mixin::initSize;
/** \todo Add LLC/SNAP support -> only use the registry
for type() values >=1536, otherwise expect an LLC header */
- static registry_key_t nextPacketKey(packet p)
+ static key_t nextPacketKey(packet p)
{ return p->type(); }
+ /// Dump given EthVLanPacket in readable form to given output stream
static void dump(packet p, std::ostream & os);
static void finalize(packet p);
};