X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Packets%2FAuxParser.hh;h=cdba7038b543822330f6528ff4968aec66595347;hb=92f8630b75f3ef50e73c48cde58645dcd1534e27;hp=fdf47c84add4bdafa187401bea3e7fcefa148a9e;hpb=43ebe17b77586542dff65f2535815a19812e4316;p=senf.git diff --git a/Packets/AuxParser.hh b/Packets/AuxParser.hh index fdf47c8..cdba703 100644 --- a/Packets/AuxParser.hh +++ b/Packets/AuxParser.hh @@ -23,10 +23,10 @@ /** \file \brief AuxParser public header */ -#ifndef HH_AuxParser_ -#define HH_AuxParser_ 1 +#ifndef HH_SENF_Packets_AuxParser_ +#define HH_SENF_Packets_AuxParser_ 1 -#ifndef HH_Packets_ +#ifndef HH_SENF_Packets_Packets_ #error "Don't include 'AuxParser.hh' directly, include 'Packets.hh'" #endif @@ -122,7 +122,7 @@ namespace detail { /** \brief Internal: Apply transformation to arbitrary aux-parser policy - Transform must statisfy the interface + Transform must satisfy the interface \code struct Transform { @@ -147,13 +147,25 @@ namespace detail { typename Transform::value_type aux(PacketParserBase::data_iterator i, PacketParserBase::state_type s) const; void aux(typename Transform::value_type const & v, PacketParserBase::data_iterator i, PacketParserBase::state_type s) const; }; + + struct PacketSizeAuxParserPolicy + { + typedef PacketSizeAuxParserPolicy WrapperPolicy; + typedef PacketSizeAuxParserPolicy ParserPolicy; + + static PacketParserBase::size_type const aux_bytes = 0; + + PacketParserBase::size_type aux(PacketParserBase::data_iterator i, PacketParserBase::state_type s) const; + void aux(unsigned v, PacketParserBase::data_iterator i, PacketParserBase::state_type s) const; + PacketParserBase::data_iterator adjust(PacketParserBase::data_iterator i, PacketParserBase::state_type s) const; + }; }} ///////////////////////////////hh.e//////////////////////////////////////// #endif -#if !defined(HH_Packets__decls_) && !defined(HH_AuxParser_i_) -#define HH_AuxParser_i_ -//#include "AuxParser.cci" +#if !defined(HH_SENF_Packets_Packets__decls_) && !defined(HH_SENF_Packets_AuxParser_i_) +#define HH_SENF_Packets_AuxParser_i_ +#include "AuxParser.cci" //#include "AuxParser.ct" #include "AuxParser.cti" #endif