// Custom includes
#include <boost/operators.hpp>
-#include "Utils/Exception.hh"
-#include "Utils/SafeBool.hh"
+#include "../Utils/Exception.hh"
+#include "../Utils/SafeBool.hh"
#include "PacketInterpreter.hh"
//#include "Packet.mpp"
Packet is protocol agnostic. This class only provides non-protocol dependent members. To
access the protocol specific features of a packet (like header fields) the ConcretePacket
- class extending Packet is povided.
+ class extending Packet is provided.
\section packet_semantics Semantics
(protocol). For each implemented protocol, typedefs should be provided for these
instantiations (Example: \ref EthernetPacket is a typedef for
\ref ConcretePacket < \ref EthernetPacketType >).
+
+ \see
+ \ref ConcretePacket for the type specific interface\n
+ \ref PacketData for the sequence interface\n
+ \ref packetparser for a specification of the parser interface
*/
class Packet
: public SafeBool<Packet>,
/**< \see valid() */
bool valid() const; ///< Check, whether the packet is valid()
/**< An in-valid() packet does not allow any operation
- except checking vor validity and assignment. in-valid()
+ except checking for validity and assignment. in-valid()
packets serve the same role as 0-pointers. */
/**< This method is provided mostly to help debugging packet
problems. Each concrete packet should implement a dump
method writing out all fields of the packet in a
- readable reresentation. dump() will call this member
+ readable representation. dump() will call this member
for each packet/header/interpreter in the chain from \c
this packet up to the end of the chain. */
factory_t factory() const; ///< Return factory instance of \c this packet
/**< The returned factory instance can be used to create new
packets of the given type without knowing the concrete
- type of the packet. The valid may be stored away for
+ type of the packet. The value may be stored away for
later use if needed. */
///@}
\param[in] noinit This parameter must always have the
value \c senf::noinit. */
static ConcretePacket createAfter(Packet packet, size_type size);
- ///< Create default initializzed packet after \a packet
+ ///< Create default initialized packet after \a packet
/**< This member will create a default initialized packet
with the given size. If the size parameter is smaller
than the minimum allowed packet size an exception will
}
///////////////////////////////hh.e////////////////////////////////////////
+#endif
+#if !defined(SENF_PACKETS_DECL_ONLY) && !defined(HH_Packet_i_)
+#define HH_Packet_i_
#include "Packet.cci"
#include "Packet.ct"
#include "Packet.cti"
// compile-command: "scons -u test"
// comment-column: 40
// End:
+