MGENPacket.hh
Go to the documentation of this file.
1 //
2 // Copyright (c) 2020 Fraunhofer Institute for Applied Information Technology (FIT)
3 // Network Research Group (NET)
4 // Schloss Birlinghoven, 53754 Sankt Augustin, GERMANY
5 // Contact: support@wiback.org
6 //
7 // This file is part of the SENF code tree.
8 // It is licensed under the 3-clause BSD License (aka New BSD License).
9 // See LICENSE.txt in the top level directory for details or visit
10 // https://opensource.org/licenses/BSD-3-Clause
11 //
12 
13 
14 #ifndef HH_MGENPacket_
15 #define HH_MGENPacket_ 1
16 
17 // Custom includes
18 #include <senf/Packets/Packets.hh>
21 
23 
25 {
26 # include SENF_PARSER()
27 
39  (novalue( disable, senf::VoidPacketParser ))
40  ( id( dstAddrV4, senf::INet4AddressParser ))
41  ( id( dstAddrV6, senf::INet6AddressParser )) );
42 
44 };
45 
47  : public senf::PacketTypeBase,
48  public senf::PacketTypeMixin<MGENPacketType>
49 {
53 
54  using mixin::nextPacketRange;
55  using mixin::initSize;
56  using mixin::init;
57 
58  static void dump(packet p, std::ostream & os);
59 };
60 
62 
63 
65 #endif
66 
senf::PacketTypeMixin< MGENPacketType > mixin
Definition: MGENPacket.hh:50
senf::UInt8Parser flags() const
senf::UInt32Parser txTimeSeconds() const
senf::UInt8Parser ::value_type dstAddrType() const
senf::UInt32Parser txTimeMicroseconds() const
#define SENF_PARSER_FIELD(name, type)
#define SENF_PARSER_VARIANT(name, chooser, types)
senf::UInt32Parser flowId() const
#define SENF_PARSER_FINALIZE(name)
void dump(std::ostream &os, DirectoryNode &dir=root())
#define SENF_PARSER_FIELD_RO(name, type)
senf::UInt16Parser messageSize() const
senf::Parse_Variant_Direct< dstAddrType_t,?,(novalue(disable, senf::VoidPacketParser))(id(dstAddrV4, senf::INet4AddressParser))(id(dstAddrV6, senf::INet6AddressParser)) >::parser dstAddr_() const
senf::ConcretePacket< MGENPacketType > MGENPacket
Definition: MGENPacket.hh:61
senf::UInt16Parser dstPort() const
senf::UInt32Parser sequenceNumber() const
senf::UInt8Parser dstAddrLen() const
senf::ConcretePacket< MGENPacketType > packet
Definition: MGENPacket.hh:51
MGENPacketParser parser
Definition: MGENPacket.hh:52
senf::UInt8Parser version() const