00001 /* 00002 * Copyright (C) Sergey P. Derevyago, 2003-2004. 00003 * 00004 * Permission to copy, use, modify, sell and distribute this software is granted 00005 * provided this copyright notice appears in all copies. 00006 * This software is provided "as is" without express or implied warranty, and 00007 * with no claim as to its suitability for any purpose. 00008 * 00009 */ 00010 00015 #ifndef __TEXTFINDER_HPP__ 00016 #define __TEXTFINDER_HPP__ 00017 00018 #include "cexception.hpp" 00019 00025 class TextFinder { 00026 public: 00032 virtual bool findIn(const std::string& line)=0; 00033 00037 virtual ~TextFinder() {} 00038 00039 private: 00041 TextFinder& operator=(const TextFinder&); 00042 }; 00043 00047 namespace Factory { 00048 00053 sh_ptr<TextFinder> newTextFinder(const std::string& text); 00054 00055 } 00056 00057 #endif