udp->source() = 2000u;
udp->destination() = 2001u;
ip->ttl() = 255u;
- ip->source() = senf::INet4Address("192.168.0.1"); // (*)
- ip->destination() = senf::INet4Address("192.168.0.2"); // (*)
- eth->source() = senf::MACAddress("00:11:22:33:44:55");
- eth->destination() = senf::MACAddress("00:11:22:33:44:66");
+ ip->source() = senf::INet4Address::from_string("192.168.0.1");
+ ip->destination() = senf::INet4Address::from_string("192.168.0.2");
+ eth->source() = senf::MACAddress::from_string("00:11:22:33:44:55");
+ eth->destination() = senf::MACAddress::from_string("00:11:22:33:44:66");
- eth.finalize(); // (*)
+ eth.finalize();
\endcode
As seen above, packet fields are accessed using the <tt>-></tt> operator whereas other packet
a detailed discussion see the respective reference documentation.
*/
+/** \defgroup protocolbundles Protocol Bundles
+
+ Each protocol bundle provides a collection of related concrete packet classes for a group of
+ related protocols:
+
+ \li <a href="../../DefaultBundle/doc/html/index.html">DefaultBundle</a>: Some basic
+ default protocols: Ethernet, Ip, TCP, UDP
+ \li <a href="../../MPEGDVBBundle/doc/html/index.html">MPEGDVBBundle</a>: MPEG and DVB
+ protocols
+
+ There are two ways to link with a bundle
+
+ \li If you only work with known packets which you explicitly reference you may just link with
+ the corresponding library.
+ \li If you need to parse unknown packets and want those to be parsed as complete as possible
+ without explicitly referencing the packet type, you will need to link against the combined
+ object file built for every bundle. This way, all packets defined in the bundle will be
+ included whether they are explicitly referenced or not (and they will all automatically be
+ registered).
+ */
+
\f
// Local Variables:
// mode: c++
// compile-command: "scons -u doc"
// End:
-// LocalWords: mainpage SENF packetparser protocolbundles protocolbundle IPv4
-// LocalWords: udp endcode li senf EthernetPacket eth IpV createAfter ip std
-// LocalWords: ethernet UDPPacket DataPacket ttl INet MACAddress nothrow prev
-// LocalWords: PacketSocketHandle InvalidPacketChainException findNext noinit
-// LocalWords: tt TruncatedPacketException const cerr Ooops hh