/* * Ivy League * * Datagrams * * Copyright 1990-2000 * Laboratoire de Recherche en Informatique (LRI) * Centre d'Etudes de la Navigation Aerienne (CENA) * * original code by Michel Beaudouin-Lafon, * modified by Stephane Chatty * * $Id$ * */ #ifndef Datagram_H_ #define Datagram_H_ #include "cplus_bugs.h" #include "ivl/bool.h" #include "ivl/word.h" #include "Socket.h" class IvlDatagram : public IvlSocket { protected: IvlAddress* FAddr; public: IvlDatagram (IvlAddress* = 0, IvlAddress* = 0); ~IvlDatagram (); IvlDatagram (const IvlDatagram& d); IvlChannel* Copy () const; int SockType (); int Send (byte*, int, IvlAddress&); int Receive (byte*, int); inline IvlAddress* From () { return FAddr; } int Reply (byte*, int); int Send (IvlMsgBuffer& b, IvlAddress& a, bool = false); int Receive (IvlMsgBuffer& b); int Reply (IvlMsgBuffer& b, bool = false); }; #endif /* Datagram_H_ */