1 | // Copyright (c) 2004 - 2005 Kai Bader <baderk@in.tum.de> |
---|
2 | // |
---|
3 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
---|
4 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
---|
5 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE |
---|
6 | // AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN |
---|
7 | // AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN |
---|
8 | // CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
---|
9 | |
---|
10 | // CVS REVISION TAG -- $Revision: 5825 $ |
---|
11 | |
---|
12 | #ifndef FILE_IMPORT_H |
---|
13 | #define FILE_IMPORT_H |
---|
14 | |
---|
15 | #include "arb_interface.hxx" |
---|
16 | #include "file_import.hxx" |
---|
17 | |
---|
18 | // Interessant wäre es vielleicht dies alles hier in eine Klasse zu verpacken |
---|
19 | // Zusätzlich sollte vielleicht noch eine Funktion zur Analyse des Spaltentyps |
---|
20 | // hinzugefügt werden. !? |
---|
21 | |
---|
22 | |
---|
23 | #define DATATYPE_UNKNOWN 0 |
---|
24 | #define DATATYPE_INT 1 |
---|
25 | #define DATATYPE_FLOAT 2 |
---|
26 | #define DATATYPE_STRING 4 |
---|
27 | |
---|
28 | |
---|
29 | typedef struct IMPORTDATA |
---|
30 | { |
---|
31 | char *species; // SPECIES NAME |
---|
32 | char *experiment; // EXPERIMENT NAME |
---|
33 | char *proteome; // PROTEOME NAME |
---|
34 | } importData; |
---|
35 | |
---|
36 | |
---|
37 | typedef struct IMPORTTABLE |
---|
38 | { |
---|
39 | int rows; // TABLE ROWS |
---|
40 | int columns; // TABLE COLUMNS |
---|
41 | char **cell; // TABLE CELL ARRAY = TABLE ENTRIES |
---|
42 | char **header; // TABLE HEADER DATA |
---|
43 | bool hasHeader; // FIRST LINE = TABLE HEADER (TRUE/FALSE) |
---|
44 | int *columnType; // ARB COLUMN TYPE (IF IDENTIFIABLE) |
---|
45 | bool hasTypes; // IS COLUMN TYPE DATA AVAILABLE |
---|
46 | } importTable; |
---|
47 | |
---|
48 | |
---|
49 | typedef struct _XSLTimporter |
---|
50 | { |
---|
51 | char *path; |
---|
52 | char **importer; |
---|
53 | int number; |
---|
54 | } XSLTimporter; |
---|
55 | |
---|
56 | |
---|
57 | importTable *fileopenCSV(char *, int); |
---|
58 | int importCSV(importTable *, importData *); |
---|
59 | importTable *createImportTable(int, int); |
---|
60 | XSLTimporter *findXSLTFiles(char *); |
---|
61 | int identifyType(char *); |
---|
62 | void identifyColumns(importTable *); |
---|
63 | |
---|
64 | #endif // FILE_IMPORT_H |
---|