-rw-r--r-- | src/aggregator.c | 34 | ||||
-rw-r--r-- | src/assign/assign_protein_type.c | 141 | ||||
-rw-r--r-- | src/load/load_influenza_aa_dat.c | 53 | ||||
-rw-r--r-- | src/load/load_influenza_aa_dat.h | 2 | ||||
-rw-r--r-- | src/load/load_influenza_faa.c | 53 | ||||
-rw-r--r-- | src/load/load_influenza_faa.h | 2 | ||||
-rw-r--r-- | src/updator.c | 2 |
7 files changed, 201 insertions, 86 deletions
diff --git a/src/load/load_influenza_aa_dat.c b/src/load/load_influenza_aa_dat.c index 8bf47aa..3826349 100644 --- a/src/load/load_influenza_aa_dat.c +++ b/src/load/load_influenza_aa_dat.c | |||
@@ -13,10 +13,9 @@ | |||
13 | #include <stdlib.h> | 13 | #include <stdlib.h> |
14 | 14 | ||
15 | #define NFIELDS (hsize_t) 11 | 15 | #define NFIELDS (hsize_t) 11 |
16 | #define TABLE_NAME "influenza_aa.dat" | ||
17 | 16 | ||
18 | void | 17 | void |
19 | load_influenza_aa_dat (hid_t file_id) | 18 | load_influenza_aa_dat (hid_t file_id, const char* file_name) |
20 | { | 19 | { |
21 | /* | 20 | /* |
22 | * Model the data using native types. | 21 | * Model the data using native types. |
@@ -145,8 +144,7 @@ load_influenza_aa_dat (hid_t file_id) | |||
145 | * Insert the records. | 144 | * Insert the records. |
146 | */ | 145 | */ |
147 | supplementary_data p_data; | 146 | supplementary_data p_data; |
148 | FILE *dat = fopen ("/home/don/exp004/genomes/INFLUENZA/influenza_aa.dat", | 147 | FILE *dat = fopen (file_name, "r"); |
149 | "r"); | ||
150 | if (dat == NULL) | 148 | if (dat == NULL) |
151 | check_error (__FILE__, __LINE__); | 149 | check_error (__FILE__, __LINE__); |
152 | char *line = NULL; | 150 | char *line = NULL; |
@@ -214,18 +212,49 @@ load_influenza_aa_dat (hid_t file_id) | |||
214 | 212 | ||
215 | if (current_line == 1) | 213 | if (current_line == 1) |
216 | { | 214 | { |
217 | herr_t status = H5TBmake_table ("influenza_aa.dat", file_id, | 215 | |
218 | TABLE_NAME, NFIELDS, 1, dst_size, | 216 | /* |
219 | field_names, dst_offset, field_type, | 217 | * Dataset already exists. Purge it. |
220 | chunk_size, fill_data, compress, | 218 | */ |
221 | &p_data); | 219 | if (H5LTfind_dataset (file_id, "influenza_aa.dat") == 1) |
222 | if (status < 0) | 220 | { |
223 | check_h5_error (status, __FILE__, __LINE__); | 221 | hsize_t nfields = 0; |
222 | hsize_t nrecords = 0; | ||
223 | herr_t status = H5TBget_table_info (file_id, "influenza_aa.dat", | ||
224 | &nfields, &nrecords); | ||
225 | if (status < 0) | ||
226 | check_h5_error (status, __FILE__, __LINE__); | ||
227 | |||
228 | status = H5TBdelete_record (file_id, "influenza_aa.dat", 0, nrecords); | ||
229 | if (status < 0) | ||
230 | check_h5_error (status, __FILE__, __LINE__); | ||
231 | |||
232 | status = | ||
233 | H5TBappend_records (file_id, "influenza_aa.dat", 1, dst_size, | ||
234 | dst_offset, dst_sizes, &p_data); | ||
235 | if (status < 0) | ||
236 | check_h5_error (status, __FILE__, __LINE__); | ||
237 | } | ||
238 | |||
239 | /* | ||
240 | * Dataset does not exist. Create it. | ||
241 | */ | ||
242 | else | ||
243 | { | ||
244 | herr_t status = H5TBmake_table ("influenza_aa.dat", file_id, | ||
245 | "influenza_aa.dat", NFIELDS, 1, dst_size, | ||
246 | field_names, dst_offset, field_type, | ||
247 | chunk_size, fill_data, compress, | ||
248 | &p_data); | ||
249 | if (status < 0) | ||
250 | check_h5_error (status, __FILE__, __LINE__); | ||
251 | } | ||
224 | } | 252 | } |
253 | |||
225 | else | 254 | else |
226 | { | 255 | { |
227 | herr_t status = | 256 | herr_t status = |
228 | H5TBappend_records (file_id, TABLE_NAME, 1, dst_size, | 257 | H5TBappend_records (file_id, "influenza_aa.dat", 1, dst_size, |
229 | dst_offset, dst_sizes, &p_data); | 258 | dst_offset, dst_sizes, &p_data); |
230 | if (status < 0) | 259 | if (status < 0) |
231 | check_h5_error (status, __FILE__, __LINE__); | 260 | check_h5_error (status, __FILE__, __LINE__); |