Atlas-C++
Negotiate.h
00001 // This file may be redistributed and modified only under the terms of
00002 // the GNU Lesser General Public License (See COPYING for details).
00003 // Copyright (C) 2000 Michael Day
00004 
00005 // $Id$
00006 
00007 #ifndef ATLAS_NEGOTIATE_H
00008 #define ATLAS_NEGOTIATE_H
00009 
00010 namespace Atlas {
00011 
00012 class Bridge;
00013 class Codec;
00014 
00026 class Negotiate
00027 {
00028     public:
00029     virtual ~Negotiate();
00030 
00031     enum State
00032     {
00033         IN_PROGRESS,
00034         SUCCEEDED,
00035         FAILED
00036     };
00037 
00038     virtual State getState() = 0;
00039     virtual Codec * getCodec(Bridge &) = 0;
00040     virtual void poll(bool can_get = true) = 0;
00041 };
00042 
00043 } // Atlas namespace
00044 
00045 #endif

Copyright 2000-2004 the respective authors.

This document can be licensed under the terms of the GNU Free Documentation License or the GNU General Public License and may be freely distributed under the terms given by one of these licenses.