module HDF5_1814 type Double1d = System.Double [] type Double2d = System.Double [,] type Double3d = System.Double [,,] (* Probably there is no reason to use the name of the libraries outside of the module. I have left the "libraryname()"-function public though. Wheter the other constants are needed outside of the module I don't know, so I leave them public. [] val HDF5x86DLL : string [] val HDF5x64DLL : string *) [] val H5P_DEFAULT : int = 0;; [] val H5T_CSET_ASCII : int = 0;; [] val H5T_CSET_UTF8 : int = 1;; type FileAccess = | ACC_TRUNC = 2u | ACC_EXCL = 4u | ACC_RDONLY = 0u | ACC_RDWR = 1u type H5_INDEX = | UNKNOWN = -1 | NAME = 0 | CRT_ORDER = 1 | INDEX_N = 2 type H5_ITER = | UNKNOWN = -1 | INC = 0 | DEC = 1 | NATIVE = 2 | N = 3 type H5S_Class = | H5S_NO_CLASS = -1 | H5S_SCALAR = 0 | H5S_SIMPLE = 1 | H5S_NULL = 2 type H5T_Class = | H5T_NO_CLASS = -1 | H5T_INTEGER = 0 | H5T_FLOAT = 1 | H5T_TIME = 2 | H5T_STRING = 3 | H5T_BITFIELD = 4 | H5T_OPAQUE = 5 | H5T_COMPOUND = 6 | H5T_REFERENCE = 7 | H5T_ENUM = 8 | H5T_VLEN = 9 | H5T_ARRAY = 10 type H5G_STORAGE_TYPE = | UNKNOWN = -1 | SYMBOL_TABLE = 0 | COMPACT = 1 | DENSE = 2 type H5L_TYPE = | ERROR = -1 | HARD = 0 | SOFT = 1 | EXTERNAL = 64 | MAXIMUM = 255 type H5O_TYPE = | UNKNOWN = -1 | GROUP = 0 | DATASET = 1 | NAMED_DATATYPE = 2 | NTYPES = 3 type CSET = | ASCII | UTF8 with member Encoding : System.Text.Encoding member toH5TCSET : unit -> int static member ofH5TCSET : code:int -> CSET end [] type H5G_info_t = struct val storage_type: H5G_STORAGE_TYPE val private unused_private_field_1: int32 val nlinks: uint64 val max_corder: int64 val mounted: uint32 val private unused_private_field_2: uint32 end [] type H5L_info_t = struct val link_type: H5L_TYPE val corder_valid: uint32 val corder: int64 val cset: int32 val private unused_private_field_1: int32 val address_or_size: uint64 member CSET : CSET end [] type H5A_info_t = struct val corder_valid: uint32 val corder: int32 val cset: int32 val private unused_private_field_1: int32 val datasize: uint64 member CSET : CSET end [] type H5O_hdr_info_t = struct val version: uint32 val nmesgs: uint32 val nchunks: uint32 val flags: uint32 val space_total: uint64 val space_meta: uint64 val space_mesg: uint64 val space_free: uint64 val mesg_flags_present: uint64 val mesg_flags_shared: uint64 end [] type H5O_info_t = struct val fileno: uint64 val address: uint64 val object_type: H5O_TYPE val reference_count: uint32 val atime: int64 val mtime: int64 val ctime: int64 val btime: int64 val num_attrs: uint64 val headerinformation: H5O_hdr_info_t val meta_obj_index_size: uint64 val meta_obj_heap_size: uint64 val meta_attr_index_size: uint64 val meta_attr_heap_size: uint64 end (* If you need one of 32-bit or 64-bit specific library functions please write a wrapper for it val H5LibOpen_x86 : unit -> int val H5LibGetVersion_x86 : nativeptr * nativeptr * nativeptr -> int val H5LibClose_x86 : unit -> int ... val H5LibOpen_x64 : unit -> int val H5LibGetVersion_x64 : nativeptr * nativeptr * nativeptr -> int val H5LibClose_x64 : unit -> int ... *) val LoadLibrary : System.Text.StringBuilder * int * int -> System.IntPtr val FreeLibrary : System.IntPtr -> bool val GetLastError : unit -> int val GetProcAddress : System.IntPtr * System.Text.StringBuilder -> System.IntPtr val checknonneg : string -> int -> int val checkpositive : string -> int -> int val use32bit : unit -> bool val libraryname : unit -> string val getLazyHDFInt32Variable : string -> Lazy val const_08_g : Lazy val const_16_g : Lazy val const_32_g : Lazy val const_64_g : Lazy val const_IEEE_F32LE_g : Lazy val const_IEEE_F64LE_g : Lazy val const_CS1_g : Lazy val LibraryOpen : unit -> unit val LibraryVersion : unit -> int * int * int val LibraryClose : unit -> unit val FileCreate : string -> bool -> int val FileOpen : string -> bool -> int val FileClose : int -> unit val DataTypeCopy : int -> int val DataTypeClass : int -> H5T_Class val DataTypeSize : int -> int val DataTypeSetSize : int -> int -> unit val DataTypeCharacterEncoding : int -> CSET val DataTypeSetCharacterEncoding : int -> CSET -> unit val DataTypeClose : int -> unit val SpaceCreateSimple : uint64 [] -> int val SpaceIsSimple : int -> bool val SpaceGetNDims : int -> int val SpaceGetDims : int -> int * uint64 [] * uint64 [] val SpaceGetClass : int -> H5S_Class val SpaceClose : int -> unit val DataSetCreateSimple : int -> int -> int -> string -> int val DataSetOpen : int -> string -> int val DataTypeFromDataSet : int -> int val SpaceFromDataSet : int -> int val DataSetClose : int -> unit val AttributeCreate : int -> string -> int -> int -> int val AttributeOpen : int -> string -> int val AttributeExists : int -> string -> bool val DataTypeFromAttribute : int -> int val SpaceFromAttribute : int -> int val AttributeWrite : int -> int -> uint8 [] -> unit val AttributeRead : int -> int -> int -> byte [] val AttributeClose : int -> unit val AttributeGetInfo : int -> H5A_info_t val AttributeGetInfoByName : int -> string -> string -> H5A_info_t val AttributeDelete : int -> string -> unit val GroupCreate : int -> string -> int val GroupOpen : int -> string -> int val GroupClose : int -> unit val GroupGetInfo : int -> H5G_info_t val GroupGetInfoByName : int -> string -> H5G_info_t val LinkDelete : int -> string -> unit val ObjectOpen : int -> string -> int val ObjectClose : int -> unit val ObjectGetInfo : int -> H5O_info_t val ObjectGetInfoByName : int -> string -> H5O_info_t type SizeOfDataType = int type ClassOfDataType = | IntegerType of SizeOfDataType | FloatType of SizeOfDataType | StringType of CSET * SizeOfDataType | ExoticType of H5T_Class * SizeOfDataType type NDimMatrix = {Dimensions: int; Size: uint64 array; DataType: ClassOfDataType;} type ClassOfSpace = | NoData | Scalar of ClassOfDataType | Rectangular of NDimMatrix | NonSimple of ClassOfDataType type AttributeRecord = {AttributeName: string; Space: ClassOfSpace; Info: H5A_info_t;} type DataSetRecord = {Name: string; Attributes: AttributeRecord list; Space: ClassOfSpace; Info: H5O_info_t;} type LinkRecord = {LinkName: string; Info: H5L_info_t;} type GroupRecord = {GroupName: string; GroupInfo: GroupInformation option;} and GroupInformation = {Attributes: AttributeRecord list; Subgroups: GroupRecord list; Datasets: DataSetRecord list; OtherLinks: LinkRecord list; Info: H5G_info_t;} val GroupGetHierarchyInformation : int -> GroupInformation val GroupGetTopLevelInformation : int -> string -> GroupInformation val ( |FloatScalar|_| ) : ClassOfSpace -> SizeOfDataType option val ( |Float1D|_| ) : ClassOfSpace -> (int * SizeOfDataType) option val ( |Float2D|_| ) : ClassOfSpace -> (int * int * SizeOfDataType) option val ( |FloatNDim|_| ): ClassOfSpace -> (int * SizeOfDataType) option val ( |ByteArray|_| ) : ClassOfSpace -> unit option val ( |IntScalar|_| ) : ClassOfSpace -> unit option val ( |StringScalar|_| ) : ClassOfSpace -> unit option val ( |TextAttribute|_| ) : AttributeRecord -> unit option val ( |DoubleScalar|_| ) : DataSetRecord -> unit option val ( |DoubleVector|_| ) : DataSetRecord -> int option val ( |DoubleMatrix|_| ) : DataSetRecord -> (int * int) option val ( |DoubleNDimMatrix|_| ) : DataSetRecord -> int option val WriteDoubleVector : int -> int -> double [] -> unit val ReadDoubleVector : int -> int -> double [] -> unit val WriteDoubleMatrix : int -> int -> double [,] -> unit val ReadDoubleMatrix : int -> int -> double [,] -> unit val WriteDoubleArray3D : int -> int -> double [,,] -> unit val ReadDoubleArray3D : int -> int -> double [,,] -> unit val WriteSingleVector : int -> int -> single [] -> unit val ReadSingleVector : int -> int -> single [] -> unit val WriteInt64Vector : int -> int -> int64 [] -> unit val ReadInt64Vector : int -> int -> int64 [] -> unit val WriteInt32Vector : int -> int -> int32 [] -> unit val ReadInt32Vector : int -> int -> int32 [] -> unit val WriteInt16Vector : int -> int -> int16 [] -> unit val ReadInt16Vector : int -> int -> int16 [] -> unit val WriteByteVector : int -> int -> byte [] -> unit val ReadByteVector : int -> int -> byte [] -> unit val SaveVectorToHDFFile : string -> string -> Double1d -> unit val SaveMatrixToHDFFile : string -> string -> Double2d -> unit val SaveArray3DToHDFFile : string -> string -> Double3d -> unit val WriteTextAttribute : int -> string -> string -> unit val ReadTextAttributeAsOption : int -> string -> string option val ReadTextAttribute : int -> string -> string