Version: 8.3.0
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
CppNode.hxx
Go to the documentation of this file.
1
// Copyright (C) 2006-2016 CEA/DEN, EDF R&D
2
//
3
// This library is free software; you can redistribute it and/or
4
// modify it under the terms of the GNU Lesser General Public
5
// License as published by the Free Software Foundation; either
6
// version 2.1 of the License, or (at your option) any later version.
7
//
8
// This library is distributed in the hope that it will be useful,
9
// but WITHOUT ANY WARRANTY; without even the implied warranty of
10
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11
// Lesser General Public License for more details.
12
//
13
// You should have received a copy of the GNU Lesser General Public
14
// License along with this library; if not, write to the Free Software
15
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
16
//
17
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
18
//
19
20
#ifndef _CPPNODE_HXX_
21
#define _CPPNODE_HXX_
22
23
#include "
ServiceNode.hxx
"
24
#include "
YACSRuntimeSALOMEExport.hxx
"
25
26
namespace
YACS
27
{
28
namespace
ENGINE
29
{
30
class
Any;
31
32
// local C++ implementation - single process
33
34
class
CppComponent;
35
36
typedef
void (*
MYRUN
)(
int
nbin,
int
nbout,
37
YACS::ENGINE::Any
**in,
YACS::ENGINE::Any
** out);
38
46
class
YACSRUNTIMESALOME_EXPORT
CppNode
:
public
YACS::ENGINE::ServiceNode
47
{
48
protected
:
49
Node
*simpleClone(
ComposedNode
*father,
bool
editionOnly)
const
;
50
public
:
51
CppNode
(
const
CppNode
&other,
ComposedNode
*father);
52
CppNode
(
const
std::string &name);
53
virtual
void
load();
54
virtual
void
execute();
55
virtual
ServiceNode
* createNode(
const
std::string& name);
56
CppNode
* cloneNode(
const
std::string& name);
57
58
void
setCode(
const
std::string & componentName,
const
std::string & service);
59
void
setFunc(
MYRUN
fonc);
60
61
static
const
char
IMPL_NAME[];
62
static
const
char
KIND[];
63
std::string
getKind
()
const
{
return
CppNode::KIND
; }
64
protected
:
65
std::string
_componentName
;
66
MYRUN
_run
;
67
68
};
69
}
70
}
71
72
#endif
src
runtime
CppNode.hxx
Copyright © 2006-2017 CEA/DEN, EDF R&D