00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 #ifndef _SK_IO_DELEGATINGTTY_
00009 #define _SK_IO_DELEGATINGTTY_
00010 
00011 #include <sk/io/Tty.h>
00012 
00013 namespace sk {
00014   namespace io {
00015     class DelegatingTty
00016       : public virtual sk::io::Tty 
00017     {
00018       public:
00019         DelegatingTty();
00020         virtual ~DelegatingTty();
00021 
00022         
00023         void setLines(int lines);
00024         void setColumns(int columns);
00025 
00026         
00027         const sk::util::Class getClass() const;
00028         
00029       protected:
00030         virtual sk::io::Tty& getTty() = 0;
00031         virtual const sk::io::Tty& getTty() const = 0;
00032 
00033     };
00034   }
00035 }
00036 
00037 #endif