I'm trying to flush a file in Hdf5DotNet 1.8.8, but H5F.flush only accepts an H5ObjectId argument. How do I use it with an H5FileId? I looked for an interface but there didn't seem to be one.
Karl, yes, this is a known problem and we'll address it as soon
as we get around to it. As a workaround, you can use the Id property (of
hid_t)
of a FileId object and call H5Fflush directly.
[DllImport("hdf5dll.dll", CallingConvention=CallingConvention::Cdecl)]
extern "C"
herr_t _cdecl H5Fflush
(
hid_t object_id,
H5F_scope_t scope
);
Best, G.
···
From: hdf-forum-bounces@hdfgroup.org [mailto:hdf-forum-bounces@hdfgroup.org]
On Behalf Of Karl Petersen
Sent: Sunday, February 19, 2012 4:54 PM
To: hdf-forum@hdfgroup.org
Subject: [Hdf-forum] Flush in Hdf5DotNet
I'm trying to flush a file in Hdf5DotNet 1.8.8, but H5F.flush only accepts
an H5ObjectId argument. How do I use it with an H5FileId? I looked for an
interface but there didn't seem to be one.
Yes! That worked! Thanks. I'm adding my code below for posterity.
...
Imports System.Runtime.InteropServices
Module NativeMethods
<DllImport("hdf5dll", SetLastError:=True, _
CallingConvention:=CallingConvention.Cdecl, CharSet:=CharSet.Ansi)> _
Public Function H5Fflush(ByVal id As Int32, ByVal scope As Int32) As Int32
End Function
End Module
...
NativeMethods.H5Fflush(f.Id, H5F.Scope.LOCAL)
...
···
From: hdf-forum-bounces@hdfgroup.org [mailto:hdf-forum-bounces@hdfgroup.org] On Behalf Of Gerd Heber
Sent: Tuesday, February 21, 2012 6:57 AM
To: 'HDF Users Discussion List'
Subject: Re: [Hdf-forum] Flush in Hdf5DotNet
Karl, yes, this is a known problem and we'll address it as soon
as we get around to it. As a workaround, you can use the Id property (of hid_t)
of a FileId object and call H5Fflush directly.
[DllImport("hdf5dll.dll", CallingConvention=CallingConvention::Cdecl)]
extern "C"
herr_t _cdecl H5Fflush
(
hid_t object_id,
H5F_scope_t scope
);
Best, G.
From: hdf-forum-bounces@hdfgroup.org [mailto:hdf-forum-bounces@hdfgroup.org] On Behalf Of Karl Petersen
Sent: Sunday, February 19, 2012 4:54 PM
To: hdf-forum@hdfgroup.org
Subject: [Hdf-forum] Flush in Hdf5DotNet
I'm trying to flush a file in Hdf5DotNet 1.8.8, but H5F.flush only accepts an H5ObjectId argument. How do I use it with an H5FileId? I looked for an interface but there didn't seem to be one.