New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
functor.hpp in vendors/XIOS/current/src – NEMO

source: vendors/XIOS/current/src/functor.hpp @ 3408

Last change on this file since 3408 was 3408, checked in by rblod, 12 years ago

importing initial XIOS vendor drop

  • Property svn:keywords set to Id
File size: 1.7 KB
Line 
1#ifndef __XMLIO_CFunctor__
2#define __XMLIO_CFunctor__
3
4/// xios headers ///
5#include "xmlioserver_spl.hpp"
6#include "exception.hpp"
7#include "array.hpp"
8
9namespace xios
10{
11   namespace func
12   {
13      /// ////////////////////// Déclarations ////////////////////// ///
14      class CFunctor : public CObject
15      {
16         /// Définition de type ///
17         typedef CObject SuperClass;
18         typedef ARRAY(double, 1) DoubleArray;
19
20         public :
21
22            /// Accesseurs ///
23            DoubleArray getDataOutput(void) const;
24            /// Opérateur ///
25            DoubleArray operator ()(const DoubleArray dinput);
26
27            /// Destructeur ///
28            virtual ~CFunctor(void);
29
30            //Traitement ///
31            virtual void final(void);
32
33         protected :
34
35            /// Traitement ///
36            virtual void apply(const DoubleArray dinput, DoubleArray doutput) = 0;
37
38            /// Autres ///
39            virtual StdString toString(void) const;
40            virtual void fromString(const StdString & str);
41
42            /// Constructeurs ///
43            CFunctor(void);                             // Not implemented.
44            CFunctor(const StdString & id, DoubleArray doutput);
45            CFunctor(const CFunctor & functor);         // Not implemented.
46            CFunctor(const CFunctor * const functor);   // Not implemented.
47
48         private :
49
50            /// Propriétés privées ///
51            DoubleArray doutput;
52           
53         protected :
54            /// Propriétés protégées ///   
55            int nbcall;           
56      }; // class CFunctor
57   } // namespace func
58} // namespace xios
59
60#include "functor_type.hpp"
61
62#endif // __XMLIO_CFunctor__
Note: See TracBrowser for help on using the repository browser.