Salome HOME
Ajout des properties
[modules/kernel.git] / src / HDFPersist / hdfi.h
1 // Copyright (C) 2005  OPEN CASCADE, CEA, EDF R&D, LEG
2 //           PRINCIPIA R&D, EADS CCR, Lip6, BV, CEDRAT
3 // This library is free software; you can redistribute it and/or
4 // modify it under the terms of the GNU Lesser General Public
5 // License as published by the Free Software Foundation; either 
6 // version 2.1 of the License.
7 // 
8 // This library is distributed in the hope that it will be useful 
9 // but WITHOUT ANY WARRANTY; without even the implied warranty of 
10 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
11 // Lesser General Public License for more details.
12 // 
13 // You should have received a copy of the GNU Lesser General Public  
14 // License along with this library; if not, write to the Free Software 
15 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
16 // 
17 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
18 // 
19 /*----------------------------------------------------------------------
20   SALOME HDFPersist : implementation of HDF persitent ( save/ restore )
21   File   : hdfi.h
22   Module : SALOME
23   ----------------------------------------------------------------------*/
24
25 #ifndef HDFI_H
26 #define HDFI_H
27
28 #include "HDFtypes.h"
29
30 /* HDF C INTERFACE */
31
32 /* File Interface */
33 extern
34 hdf_idt HDFfileCreate(char *name);
35
36 extern
37 hdf_err HDFfileClose(hdf_idt fid);
38
39 extern
40 hdf_idt HDFfileOpen(char *name,hdf_access_mode access_mode);
41
42 extern
43 hdf_err HDFfileMount(hdf_idt id,const char *name,hdf_idt fid);
44
45 extern
46 hdf_err HDFfileUmount(hdf_idt id,const char *name);
47
48 /* Group Interface */
49 extern
50 hdf_idt HDFgroupCreate(hdf_idt pid, char *name);
51
52 extern
53 hdf_idt HDFgroupOpen(hdf_idt pid, char *name);
54
55 extern 
56 hdf_err HDFgroupClose(hdf_idt id);
57
58 /* DataSet Interface */
59 extern 
60 hdf_idt HDFdatasetOpen(hdf_idt pid,char *name);
61
62 extern
63 hdf_err HDFdatasetClose(hdf_idt id);
64
65 extern
66 hdf_idt HDFdatasetCreate(hdf_idt pid,char *name,hdf_type type,
67                          hdf_size *dimd, int ndim, hdf_byte_order order);
68
69 extern
70 hdf_err HDFdatasetWrite(hdf_idt id, void *val);
71
72 extern
73 hdf_err HDFdatasetRead(hdf_idt id, void *val);
74
75 extern
76 hdf_type HDFdatasetGetType(hdf_idt id);
77
78 extern 
79 int HDFdatasetGetnDim(hdf_idt id);
80
81 extern 
82 hdf_err HDFdatasetGetDim(hdf_idt id,hdf_size dim[]);
83
84 extern
85 int HDFdatasetGetSize(hdf_idt id);
86
87 extern 
88 hdf_byte_order HDFdatasetGetOrder(hdf_idt id);
89
90 /* Attribute interface */
91 extern
92 hdf_idt HDFattrOpen(hdf_idt pid,char *name);
93
94 extern
95 hdf_err HDFattrClose(hdf_idt id);
96
97 extern
98 hdf_idt HDFattrCreate(hdf_idt pid,char *name,hdf_type type, size_t size);
99
100 extern
101 hdf_err HDFattrWrite(hdf_idt id,void *val);
102
103 extern
104 hdf_err HDFattrRead(hdf_idt id,void *val);
105
106 extern
107 hdf_type HDFattrGetType(hdf_idt id);
108
109 extern
110 hdf_type HDFattrGetSize(hdf_idt id);
111
112 /* HDF Tools */
113 extern
114 void HDFerrorModeLock();
115
116 extern
117 hdf_err
118 HDFnObjects(hdf_idt fid,char *path,int *n);
119
120 extern
121 hdf_err HDFobjectIdentify(hdf_idt fid,char *path,int i,char *name);
122
123 extern
124 hdf_err HDFobjectType(hdf_idt id, char *name, hdf_object_type *type);
125
126 #endif /* HDFI_H */