-
Notifications
You must be signed in to change notification settings - Fork 22
/
TODO
69 lines (62 loc) · 2.72 KB
/
TODO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
- H5S_select_index:
check: index exeeds matrix dimensions
- What happens to NA's in string arrays?
- indexing with list of indices, instead of hyperslabs
- read/write logical
- write lists
- write data.frame
- write compound datatype
- read nested compound datatypes to data.frame
- read/write bitfield
- read/write array data type
- read/write variable length strings
- read/write S3/S4 classes
- read/write attributes
- convert any HDF5 integer to int32 on R-side: throw warning
- Same for long double: throw warning
- remove internal1 and internal2 from H5Dcreate
-function addGroupHandle(hid_t ID, const char *name, hid_t loc_id) in
file HandleList.cp uses malloc. Find replacement for malloc
- h5save, h5write: ask if h5loc is valid before writing
- test h5read for different sel_types
- show(H5space): show selected hyperslab
- h5createFile: parameter overwrite
Discussion:
- Which functions to export: All C-interface functions, or only a small number of selected ones?
- H5file & H5group: show directory
- h5write: when vector passed to h5write, it looses its names attribute
- h5read and h5write call low-level functions with the help of try. Implement proper error messaging and move try's around .Call.
####################################################
Solved
+ h5ls change argument simple=TRUE to all=FALSE
+ use class H5File / H5Group in the files
-- H5D.R [done]
-- H5S.R [done]
-- h5dump.R [done]
-- h5ls.R [done]
-- h5read.R [done]
-- h5save.R [done]
-- h5write.R [done]
- H5file & H5group: show: check if file is still open.
show filename and directory
- How to represent constants:
- Create an object .onLoad
- and use text input whenever a constant is required e.g. "H5P_DEFAULT"
- fid, gid as classes
- H5file & H5group: show: check if file is still open.
show filename and directory
- H5Dget_space: Read type of dataspace. Now it is set to H5S_SIMPLE per default
- addDatasetHandle: Read datatype and data space when opening a dataset (dtype_id = -1 and dspace_id = -1)
- compression
- h5write: create dataset and hdf5-file if not yet available
- hwriteHyperslab, even a vector needs a dim attribute, change this
- h5read: return dim symbol (check if this works!)
- writing string data: There is lots of printf's in the c-code. Remove them.
- h5ls: dimensions appear in wrong order (reverse dimensions before printing)
- hdf5 library source in package
- read compound
- h5read.INTEGER: How to make this generic?
- use do.call
- h5ls provides a fingerprint of each dataset. Can we register a function for a specific fingerprint?
- or Class of resulting object has to be given to h5read, whenever we need a specific h5read-function
- or attach specific R-attributes to hdf5 objects: NAMESPACE = packagename, class = myRclass