Salome HOME
tag 5.1.2 --> 5.1.3
[modules/kernel.git] / idl / SALOME_RessourcesCatalog.idl
index be518177fce3c305de910943f52efe344a57d75b..c430744cdabdb715132ca1b20cc26c1aa916bfd8 100755 (executable)
@@ -1,46 +1,90 @@
-// File: SALOME_RessourcesCatalog.idl
-// Created: Mon Sep 10 2001
-// Author: Estelle Deville
-// Project: SALOME
-// Copyright : CEA/DEN/DMSS/LGLS
-// $Header$
+//  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
+//
+//  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  File   : SALOME_RessourcesCatalog.idl
+//  Author : Estelle Deville
+//  $Header$
+//
 
+/*! \file SALOME_RessourcesCatalog.idl \brief interfaces for %SALOME Resources Catalog
+*/
+
+/*! \brief module that provides interface to manage the Resources Catalog of %SALOME 
+*/
 module SALOME_RessourcesCatalog{
-  // Type Definitions
 
-  //Proc_info : information about a processor
+  //! Information about a processor
   struct proc_info{
+    //! processor number
     long number;
+    //! model name
     string model_name;
+    //! frequency in MHz
     float cpu_mhz;
+    //! cache size in MB
     float cache_size;
   };
 
+  //! a list of processor informations
   typedef sequence<proc_info> ListOfProc;
 
-  //Computer_info : information about a computer
-  // Os and informations about processors
+  //! Information about a computer
+  /*!
+     Os and informations about processors
+  */
   struct computer_info{
+    //! computer name
     string name;
+    //! OS name
     string OS;
+    //! OS version
     string OS_version;
+    //! processors list
     ListOfProc procs;
   };
 
-  enum ContainerType {Cpp, python, NP};
+  //! Container type
+  enum ContainerType {
+  Cpp, /*!< C++ container */
+  python, /*!< python container */
+  NP /*!< NP container */
+  };
+  //! a list of container types
   typedef sequence<ContainerType> ListOfContainerType;
 
+  //! a list of computer names
   typedef sequence<string> ListOfComputer;
 
-  // exception thrown if a computer is not found in the catalog 
-
+  //! exception thrown if a computer is not found in the catalog 
   exception NotFound {};
 
   //------------------------------------------------------------------
-  //Interface
+/*! \brief interface to get information about Resources
+*/
   interface RessourcesCatalog {
+    //! Get the catalog computers list
     ListOfComputer GetComputerList();
+    //! Get the container types list for a given computer
     ListOfContainerType GetContainerTypeList (in string computer) raises(NotFound);
+    //! Get computer information for a given computer
     computer_info GetComputerInfo(in string computer) raises(NotFound);
   };
 };