Salome HOME
sources v1.2
[modules/superv.git] / idl / SALOME / SALOME_DataTypeCatalog.idl
diff --git a/idl/SALOME/SALOME_DataTypeCatalog.idl b/idl/SALOME/SALOME_DataTypeCatalog.idl
new file mode 100644 (file)
index 0000000..ad1767e
--- /dev/null
@@ -0,0 +1,49 @@
+//  Copyright (C) 2003  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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org 
+//
+//
+//
+//  File   : SALOME_DataTypeCatalog.idl
+//  Author : Estelle Deville, Paul Rascle
+//  $Header$
+
+module SALOME_DataTypeCatalog{
+// Type definitions
+
+// List of Data Type Names
+  typedef sequence<string> ListOfDataTypeName ;
+
+  // Exception thrown if a DataType is not found in the catalog
+  exception NotFound {};
+//--------------------------------------------------------------------------
+// Interfaces
+
+// Catalog interface :
+// methods to :
+//  - obtain the data type names of the catalog
+//  - test the compatibility between two type names
+interface DataCatalog
+{
+  ListOfDataTypeName GetDataTypeList() ;
+  boolean isDerivedFrom(in string type_in, in string type_out) raises(NotFound);
+  string GetDataInterfaceRead(in string type) raises(NotFound);
+  string GetDataInterfaceWrite(in string type)raises(NotFound);
+   ListOfDataTypeName GetDataTypeParents(in string type) raises(NotFound);
+} ;
+};