// This file may be redistributed and modified only under the terms of // the GNU Lesser General Public License (See COPYING for details). // Copyright (C) 2000-2001 Michael Day, Stefanus Du Toit #ifndef ATLAS_CODEC_H #define ATLAS_CODEC_H #include namespace Atlas { /** Atlas stream codec This class presents an interface for sending and receiving Atlas messages. Each outgoing message is converted to a byte stream and piped through an optional chain of filters for compression or other transformations, then passed to a socket for transmission. Incoming messages are read from the socket, piped through the filters in the opposite direction and passed to a user specified Bridge callback class. @see Bridge @see Negotiate */ class Codec : public Bridge { public: virtual ~Codec(); virtual void poll(bool can_get = true) = 0; }; } // Atlas namespace #endif