wscout::gui::IPHeader< ExactIPHeader, Protocol > Struct Template Reference

Base for IP header widgets (IPv4Header, IPv6Header). More...

#include <wscout_gui_ip_header.hh>

Inheritance diagram for wscout::gui::IPHeader< ExactIPHeader, Protocol >:

wscout::gui::HeaderBase< ExactIPHeader, Protocol > wscout::gui::AbstractHeader wscout::gui::HeaderFrame wscout::gui::IPv4Header wscout::gui::IPv6Header

List of all members.

Public Types

enum  
typedef std::pair
< protocol::id, const void * > 
next_header
enum  { header_margin = 2 }

Public Member Functions

 IPHeader (QWidget *parent=0)
virtual next_header setup (const void *packet, size_t caplen, const Trace &trace, const pcapxx::frame_descriptor &desc)=0
QBoxLayout * layout ()

Static Public Member Functions

static AbstractHeaderallocator ()
static void registerProtocol ()

Protected Attributes

QLabel srcDst_


Detailed Description

template<class ExactIPHeader, int Protocol>
struct wscout::gui::IPHeader< ExactIPHeader, Protocol >

Base for IP header widgets (IPv4Header, IPv6Header).

See also:
AbstractHeader, HeaderBase, IPv4Header, IPv6Header

Member Typedef Documentation

typedef std::pair<protocol::id, const void*> wscout::gui::AbstractHeader::next_header [inherited]

Identify this header's next header.

The first element specifies the next header's protocol. The second one points to the next header's beginning of data.

If there is no next protocol, use protocol::NONE. If the next protocol is unknown, use protocol::UNKNOWN.

See also:
protocol::id


Member Enumeration Documentation

anonymous enum [inherited]

Enumerator:
header_margin  Margins around headers.


Member Function Documentation

static AbstractHeader* wscout::gui::HeaderBase< ExactIPHeader , Proto >::allocator (  )  [static, inherited]

Allocate an instance of Exact using new.

static void wscout::gui::HeaderBase< ExactIPHeader , Proto >::registerProtocol (  )  [static, inherited]

Register allocator() for protocol.

virtual next_header wscout::gui::AbstractHeader::setup ( const void *  packet,
size_t  caplen,
const Trace trace,
const pcapxx::frame_descriptor &  desc 
) [pure virtual, inherited]

Setup the widget for a specific packet.

This method is purely abstract. You must define it when subclassing.

Parameters:
[in] packet Pointer to the packet's begining.
[in] caplen Number of availabe bytes for this packet.
[in] trace Packet's corresponding gui::Trace.
[in] desc Packet's corresponding frame descriptor.
Returns:
The next header's type and address.
See also:
next_header

Implemented in wscout::gui::AVSHeader, wscout::gui::IEEE80211BeaconHeader, wscout::gui::IEEE80211Header, wscout::gui::IPv4Header, wscout::gui::IPv6Header, wscout::gui::LLCHeader, wscout::gui::PcapHeader, and wscout::gui::PrismHeader.

Referenced by wscout::gui::Packet::setup().

QBoxLayout * wscout::gui::HeaderFrame::layout (  )  [inline, inherited]


The documentation for this struct was generated from the following files:

Generated on Fri Mar 28 14:53:38 2008 for WScout by  doxygen 1.5.5