Logo  0.95.0-final
Finite Element Embedded Library and Language in C++
Feel++ Feel++ on Github Feel++ community
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
fsfunctional.hpp
Go to the documentation of this file.
1 /* -*- mode: c++; coding: utf-8; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; show-trailing-whitespace: t -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
2 
3  This file is part of the Feel library
4 
5  Author(s): Christoph Winkelmann <christoph.winkelmann@epfl.ch>
6  Date: 2006-11-16
7 
8  Copyright (C) 2006 EPFL
9 
10  This library is free software; you can redistribute it and/or
11  modify it under the terms of the GNU Lesser General Public
12  License as published by the Free Software Foundation; either
13  version 3.0 of the License, or (at your option) any later version.
14 
15  This library is distributed in the hope that it will be useful,
16  but WITHOUT ANY WARRANTY; without even the implied warranty of
17  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18  Lesser General Public License for more details.
19 
20  You should have received a copy of the GNU Lesser General Public
21  License along with this library; if not, write to the Free Software
22  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
23 */
30 #ifndef _FSFUNCTIONAL_HPP_
31 #define _FSFUNCTIONAL_HPP_
32 
33 namespace Feel
34 {
35 
36 // Functional on function space
37 template<class Space>
38 class FsFunctional
39 {
40 public:
41 
42  // -- TYPEDEFS --
43  typedef Space space_type;
44 
45  typedef boost::shared_ptr<space_type> space_ptrtype;
46  typedef typename space_type::element_type element_type;
47 
48  typedef typename space_type::value_type value_type;
49 
50  FsFunctional( space_ptrtype space ) :
51  M_space( space )
52  {
53  }
54 
55  // apply the functional
56  virtual value_type
57  operator()( const element_type& x ) const = 0;
58 
59  space_ptrtype space() const
60  {
61  return M_space;
62  }
63 
64 private:
65 
66  space_ptrtype M_space;
67 
68 }; // class FsFunctional
69 
70 } // Feel
71 
72 #endif /* _FSFUNCTIONAL_HPP_ */

Generated on Sun Oct 20 2013 08:24:57 for Feel++ by doxygen 1.8.4