/* * The Unix Channel * * by Michel Beaudouin-Lafon * * Copyright 1990-1997 * Laboratoire de Recherche en Informatique (LRI) * * Datagrams * * $Id$ * $CurLog$ */ #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_ */