#ifndef GNCODEC_H #define GNCODEC_H #include "Codec.hh" namespace LibItsGeoNetworking__TypesAndValues { class GeoNetworkingPdu; class ExtendedHeader; class DecodedPayload; } class GeoNetworkingCodec : public Codec { unsigned int _plLength_position; int encode_ (const Base_Type& type, const TTCN_Typedescriptor_t& field_descriptor, TTCN_Buffer& encoding_buffer); int encode_extendedHeader(const LibItsGeoNetworking__TypesAndValues::ExtendedHeader& u, TTCN_Buffer& encoding_buffer); int encode_decodedPayload(const LibItsGeoNetworking__TypesAndValues::DecodedPayload& u, TTCN_Buffer& encoding_buffer); public: GeoNetworkingCodec() : _plLength_position(0) {}; virtual int encode (const LibItsGeoNetworking__TypesAndValues::GeoNetworkingPdu&, OCTETSTRING& data); virtual int decode (const OCTETSTRING& data, LibItsGeoNetworking__TypesAndValues::GeoNetworkingPdu&); }; #endif