Project Wolframe
The Straight Path to Successful Projects
Home
Downloads
Documentation
Support
FAQ
Mailing lists
Contact Us
Wolframe, 0.0.3
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
include
appdevel
module
cppFormFunctionTemplate.hpp
Go to the documentation of this file.
1
/************************************************************************
2
3
Copyright (C) 2011 - 2014 Project Wolframe.
4
All rights reserved.
5
6
This file is part of Project Wolframe.
7
8
Commercial Usage
9
Licensees holding valid Project Wolframe Commercial licenses may
10
use this file in accordance with the Project Wolframe
11
Commercial License Agreement provided with the Software or,
12
alternatively, in accordance with the terms contained
13
in a written agreement between the licensee and Project Wolframe.
14
15
GNU General Public License Usage
16
Alternatively, you can redistribute this file and/or modify it
17
under the terms of the GNU General Public License as published by
18
the Free Software Foundation, either version 3 of the License, or
19
(at your option) any later version.
20
21
Wolframe is distributed in the hope that it will be useful,
22
but WITHOUT ANY WARRANTY; without even the implied warranty of
23
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
24
GNU General Public License for more details.
25
26
You should have received a copy of the GNU General Public License
27
along with Wolframe. If not, see <http://www.gnu.org/licenses/>.
28
29
If you have questions regarding the use of this file, please contact
30
Project Wolframe.
31
32
************************************************************************/
35
36
#ifndef _Wolframe_appdevel_CPPFUNCTION_TEMPLATE_HPP_INCLUDED
37
#define _Wolframe_appdevel_CPPFUNCTION_TEMPLATE_HPP_INCLUDED
38
39
#include "
serialize/cppFormFunction.hpp
"
40
#include "
processor/procProviderInterface.hpp
"
41
#include "
processor/execContext.hpp
"
42
43
namespace
_Wolframe {
44
namespace
appdevel {
45
48
template
<
class
OutputType,
class
InputType,
int
(*Function)( proc::ExecContext* ctx, OutputType&, const InputType&)>
49
struct
CppFormFunction
50
{
51
static
const
serialize::CppFormFunction
&
declaration
()
52
{
53
static
const
serialize::StructDescriptionBase
* param = InputType::getStructDescription();
54
static
const
serialize::StructDescriptionBase
* result = OutputType::getStructDescription();
55
struct
Functor
56
{
57
static
int
implementation(
proc::ExecContext
* ctx,
void
* res,
const
void
* param)
58
{
59
return
Function( ctx, *(OutputType*)res, *(
const
InputType*) param);
60
}
61
};
62
static
serialize::CppFormFunction
func( Functor::implementation, param, result);
63
return
func;
64
}
65
};
66
67
}}
//namespace
68
#endif
69
70
71
cppFormFunction.hpp
Interface to form functions written in C++.
_Wolframe::serialize::StructDescriptionBase
Base class for structure description used for introspection in serialization/deserialization.
Definition:
structDescriptionBase.hpp:51
_Wolframe::proc::ExecContext
Execution context passed to functions for referencing resources and to define authorization dependend...
Definition:
execContext.hpp:47
procProviderInterface.hpp
Interface to processor provider for language bindings and database.
execContext.hpp
Execution context.
_Wolframe::appdevel::CppFormFunction
Application development template for form functions written in C++.
Definition:
cppFormFunctionTemplate.hpp:49
_Wolframe::appdevel::CppFormFunction::declaration
static const serialize::CppFormFunction & declaration()
Definition:
cppFormFunctionTemplate.hpp:51
_Wolframe::serialize::CppFormFunction
Function of language bindings implemented in C++ with a form as argument and as result. The forms are defined by a serialization description.
Definition:
cppFormFunction.hpp:111
Generated on Fri Aug 29 2014 16:25:49 for Wolframe by
1.8.7
Copyright © 2014 -
Project Wolframe
- All Rights Reserved
Copyrights and credits