schema.h

00001 // -*- mode: c++; c-indent-level: 4; c++-member-init-indent: 8; comment-column: 35; -*-
00002 
00003 // "schema.h"
00004 
00005 // (c) OPAC Team, LIFL, August 2005
00006 
00007 /* This library is free software; you can redistribute it and/or
00008    modify it under the terms of the GNU Lesser General Public
00009    License as published by the Free Software Foundation; either
00010    version 2 of the License, or (at your option) any later version.
00011    
00012    This library is distributed in the hope that it will be useful,
00013    but WITHOUT ANY WARRANTY; without even the implied warranty of
00014    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00015    Lesser General Public License for more details.
00016    
00017    You should have received a copy of the GNU Lesser General Public
00018    License along with this library; if not, write to the Free Software
00019    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
00020    
00021    Contact: paradiseo-help@lists.gforge.inria.fr
00022 */
00023 
00024 #ifndef __schema_h
00025 #define __schema_h
00026 
00027 #include <string>
00028 #include <vector>
00029 #include <cassert>
00030 
00031 #include "../../core/runner.h"
00032 
00033 typedef int RANK_ID;
00034 
00035 struct Node {
00036   
00037   RANK_ID rk; /* Rank */
00038   std :: string name; /* Host name */
00039   unsigned num_workers; /* Number of parallel workers */
00040   int rk_sched; /* rank of the scheduler */
00041   std :: vector <RUNNER_ID> id_run; /* List of runners */
00042 };
00043 
00044 extern std :: vector <Node> the_schema;
00045 
00046 extern Node * my_node;
00047 
00048 extern void loadSchema (const char * __filename);
00049 
00050 extern RANK_ID getRankOfRunner (RUNNER_ID __key);
00051 
00052 extern bool isScheduleNode ();
00053 
00054 #endif

Generated on Wed Dec 20 13:45:48 2006 for ParadisEO by  doxygen 1.4.6