00001
00002
00003
00004
00005
00006
00007 #ifndef FORMATTER_H_
00008 #define FORMATTER_H_
00009
00010 #include <string>
00011
00012 #include <boost/shared_ptr.hpp>
00013
00014 namespace srchilite {
00015
00016 struct FormatterParams;
00017
00025 class Formatter
00026 {
00027 public:
00028 Formatter();
00029 virtual ~Formatter();
00030
00037 virtual void format(const std::string &s, const FormatterParams *params = 0) = 0;
00038 };
00039
00041 typedef boost::shared_ptr<Formatter> FormatterPtr;
00042
00043 }
00044
00045 #endif