Version: 8.3.0
Main Page
Related Pages
Packages
Data Structures
Files
File List
Globals
SALOME_ResourcesManager.idl
Go to the documentation of this file.
1
// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE
2
//
3
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
5
//
6
// This library is free software; you can redistribute it and/or
7
// modify it under the terms of the GNU Lesser General Public
8
// License as published by the Free Software Foundation; either
9
// version 2.1 of the License, or (at your option) any later version.
10
//
11
// This library is distributed in the hope that it will be useful,
12
// but WITHOUT ANY WARRANTY; without even the implied warranty of
13
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
// Lesser General Public License for more details.
15
//
16
// You should have received a copy of the GNU Lesser General Public
17
// License along with this library; if not, write to the Free Software
18
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19
//
20
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21
//
22
23
#ifndef _SALOME_RESOURCESMANAGER_IDL_
24
#define _SALOME_RESOURCESMANAGER_IDL_
25
26
#include "
SALOME_Exception.idl
"
27
31
module Engines
32
{
33
35
typedef
sequence<string>
ResourceList
;
37
typedef
sequence<string>
CompoList
;
38
typedef
sequence<long>
IntegerList
;
39
41
struct
ResourceParameters
42
{
44
48
string
name
;
49
51
string
hostname
;
53
boolean
can_launch_batch_jobs
;
55
boolean
can_run_containers
;
57
string
OS
;
59
60
CompoList
componentList
;
61
62
// Permits to order resources
64
67
long
nb_proc
;
68
70
89
long
mem_mb
;
91
long
cpu_clock
;
93
long
nb_node
;
95
long
nb_proc_per_node
;
96
97
// Permits to configure SALOME resource management
99
string
policy
;
101
ResourceList
resList
;
102
};
103
105
struct
ResourceDefinition
106
{
108
string
name
;
110
string
hostname
;
112
string
type
;
115
string
protocol
;
117
string
username
;
119
string
applipath
;
122
CompoList
componentList
;
123
125
string
OS
;
127
long
mem_mb
;
129
long
cpu_clock
;
131
long
nb_node
;
133
long
nb_proc_per_node
;
135
string
batch
;
137
string
mpiImpl
;
140
string
iprotocol
;
141
143
boolean
can_launch_batch_jobs
;
145
boolean
can_run_containers
;
146
148
string
working_directory
;
149
};
150
155
interface
ResourcesManager
156
{
158
string
FindFirst(in ResourceList possibleResources);
159
161
string
Find(in
string
policy, in ResourceList possibleResources);
162
164
167
ResourceList GetFittingResources(in
ResourceParameters
params) raises (
SALOME::SALOME_Exception
);
168
170
ResourceDefinition
GetResourceDefinition(in
string
name) raises (
SALOME::SALOME_Exception
);
171
173
178
void
AddResource(in
ResourceDefinition
new_resource, in
boolean
write, in
string
xml_file)
179
raises (
SALOME::SALOME_Exception
);
180
182
187
void
RemoveResource(in
string
resource_name, in
boolean
write, in
string
xml_file)
188
raises (
SALOME::SALOME_Exception
);
189
191
string
getMachineFile(in
string
resource_name, in
long
nb_procs, in
string
parallelLib)
192
raises (
SALOME::SALOME_Exception
);
193
195
void
ListAllAvailableResources(
out
ResourceList machines,
out
IntegerList nbProcsOfMachines) raises (
SALOME::SALOME_Exception
);
196
};
197
198
};
199
200
#endif
idl
SALOME_ResourcesManager.idl
Copyright © 2007-2017 CEA/DEN, EDF R&D, OPEN CASCADE
Copyright © 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS