28 lines
677 B
C
28 lines
677 B
C
|
/***************************************************************************
|
||
|
* By Théophile Bastian, 2017
|
||
|
* M1 Network course project at ENS Cachan, Juliusz Chroboczek.
|
||
|
* License: WTFPL v2 <http://www.wtfpl.net/>
|
||
|
**************************************************************************/
|
||
|
|
||
|
#pragma once
|
||
|
|
||
|
#include "neighbours.h"
|
||
|
#include "protocol.h"
|
||
|
|
||
|
class PacketParser {
|
||
|
public:
|
||
|
PacketParser(Neighbours* nei, Protocol* proto);
|
||
|
|
||
|
void parse(Bytes pck);
|
||
|
|
||
|
private: //meth
|
||
|
void readTLV(Bytes& pck, u64 nei);
|
||
|
void receiveNeigh(Bytes& pck, u8 length);
|
||
|
void receiveData(Bytes& pck, u8 length, u64 from);
|
||
|
|
||
|
private:
|
||
|
Neighbours* neighbours;
|
||
|
Protocol* protocol;
|
||
|
};
|
||
|
|