1 // Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
3 // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
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.
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.
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
20 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
23 /*----------------------------------------------------------------------
24 SALOME HDFPersist : implementation of HDF persitent ( save/ restore )
27 ----------------------------------------------------------------------*/
41 hdf_idt HDFfileCreate(char *name);
44 hdf_err HDFfileClose(hdf_idt fid);
47 hdf_idt HDFfileOpen(char *name,hdf_access_mode access_mode);
50 hdf_err HDFfileMount(hdf_idt id,const char *name,hdf_idt fid);
53 hdf_err HDFfileUmount(hdf_idt id,const char *name);
57 hdf_idt HDFgroupCreate(hdf_idt pid, char *name);
60 hdf_idt HDFgroupOpen(hdf_idt pid, char *name);
63 hdf_err HDFgroupClose(hdf_idt id);
65 /* DataSet Interface */
67 hdf_idt HDFdatasetOpen(hdf_idt pid,char *name);
70 hdf_err HDFdatasetClose(hdf_idt id);
73 hdf_idt HDFdatasetCreate(hdf_idt pid,char *name, hdf_type type,
74 hdf_size *dimd, int ndim, hdf_byte_order order, hdf_idt arrayId);
77 hdf_err HDFdatasetWrite(hdf_idt id, void *val);
80 hdf_err HDFdatasetRead(hdf_idt id, void *val);
83 hdf_type HDFdatasetGetType(hdf_idt id);
86 hdf_type HDFarrayGetType(hdf_idt id);
89 hdf_idt HDFarrayGetTypeId(hdf_idt type_id);
92 hdf_err HDFarrayClose(hdf_idt id);
95 int HDFarrayGetnDim(hdf_idt id);
98 hdf_err HDFarrayGetDim(hdf_idt id, hdf_size dim[]);
102 hdf_idt HDFarrayCreate(hdf_type dataType,int ndim,hdf_size *dim);
105 int HDFdatasetGetnDim(hdf_idt id);
108 hdf_err HDFdatasetGetDim(hdf_idt id,hdf_size dim[]);
111 int HDFdatasetGetSize(hdf_idt id);
114 hdf_byte_order HDFdatasetGetOrder(hdf_idt id);
116 /* Attribute interface */
118 hdf_idt HDFattrOpen(hdf_idt pid,char *name);
121 hdf_err HDFattrClose(hdf_idt id);
124 hdf_idt HDFattrCreate(hdf_idt pid,char *name,hdf_type type, size_t size);
127 hdf_err HDFattrWrite(hdf_idt id,void *val);
130 hdf_err HDFattrRead(hdf_idt id,void *val);
133 hdf_type HDFattrGetType(hdf_idt id);
136 hdf_type HDFattrGetSize(hdf_idt id);
140 void HDFerrorModeLock();
144 HDFnObjects(hdf_idt fid,const char *path,int *n);
147 hdf_err HDFobjectIdentify(hdf_idt fid,const char *path,int i,char *name);
150 hdf_err HDFobjectType(hdf_idt id, char *name, hdf_object_type *type);