00001 00008 #ifndef CDISPLAY_H 00009 #define CDISPLAY_H 1 00010 00016 template <class T> 00017 class CDisplay 00018 { 00019 public: 00030 CDisplay(std::string name) 00031 : m_name(name) 00032 {} 00033 00044 virtual ~CDisplay() 00045 {} 00046 00057 virtual const std::string& getName() 00058 { 00059 return m_name; 00060 } 00061 00072 virtual void display(const T &value) = 0; 00073 00074 protected: 00075 /* members */ 00077 std::string m_name; 00078 }; 00079 00080 #endif 00081 00082 /* vim: set et sw=2 ts=2: */