search.hh

Go to the documentation of this file.
00001 // search.hh: this file is part of the Vaucanson project.
00002 //
00003 // Vaucanson, a generic library for finite state machines.
00004 //
00005 // Copyright (C) 2001, 2002, 2003, 2004, 2005 The Vaucanson Group.
00006 //
00007 // This program is free software; you can redistribute it and/or
00008 // modify it under the terms of the GNU General Public License
00009 // as published by the Free Software Foundation; either version 2
00010 // of the License, or (at your option) any later version.
00011 //
00012 // The complete GNU General Public Licence Notice can be found as the
00013 // `COPYING' file in the root directory.
00014 //
00015 // The Vaucanson Group consists of people listed in the `AUTHORS' file.
00016 //
00017 #ifndef VCSN_ALGORITHMS_SEARCH_HH
00018 # define VCSN_ALGORITHMS_SEARCH_HH
00019 
00032 # include <vaucanson/automata/concept/automata.hh>
00033 
00034 namespace vcsn {
00035 
00063   template <class InputIterator, class FoundFunctor, class Series, class T>
00064   void
00065   search(const Element<Automata<Series>, T>& a,
00066          const InputIterator& begin,
00067          const InputIterator& end,
00068          typename Element<Automata<Series>, T>::letter_t eol,
00069          FoundFunctor& f);
00070 
00082   struct FindBestSearch
00083   {
00084     template <class InputIterator, class FoundFunctor, class Series, class T>
00085     static
00086     void
00087     search(const Element<Automata<Series>, T>& a,
00088            const InputIterator& begin,
00089            const InputIterator& end,
00090            typename Element<Automata<Series>, T>::letter_t eol,
00091            FoundFunctor& f);
00092   };
00093 
00108   struct WindowedBackSearch
00109   {
00110     template <class InputIterator, class FoundFunctor, class Series, class T>
00111     static
00112     void
00113     search(const Element<Automata<Series>, T>& a,
00114            const InputIterator& begin,
00115            const InputIterator& end,
00116            typename Element<Automata<Series>, T>::letter_t eol,
00117            FoundFunctor& f);
00118   };
00119 
00122 } // vcsn
00123 
00124 # if !defined VCSN_USE_INTERFACE_ONLY && !defined VCSN_USE_LIB
00125 #  include <vaucanson/algorithms/search.hxx>
00126 # endif // VCSN_USE_INTERFACE_ONLY
00127 
00128 #endif // ! VCSN_ALGORITHMS_SEARCH_HH

Generated on Sun Jul 29 19:35:29 2007 for Vaucanson by  doxygen 1.5.2