Statistics
| Revision:

root / branches / gvSIG_19_ext3D_osgVP_2_2_0 / binaries / mac / raster / gdal / GDAL.framework / Versions / 1.6 / Headers / cpl_csv.h @ 32115

History | View | Annotate | Download (2.69 KB)

1
/******************************************************************************
2
 * $Id: cpl_csv.h 14307 2008-04-16 05:00:05Z warmerdam $
3
 *
4
 * Project:  Common Portability Library
5
 * Purpose:  Functions for reading and scaning CSV (comma separated,
6
 *           variable length text files holding tables) files.  
7
 * Author:   Frank Warmerdam, warmerdam@pobox.com
8
 *
9
 ******************************************************************************
10
 * Copyright (c) 1999, Frank Warmerdam
11
 *
12
 * Permission is hereby granted, free of charge, to any person obtaining a
13
 * copy of this software and associated documentation files (the "Software"),
14
 * to deal in the Software without restriction, including without limitation
15
 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
16
 * and/or sell copies of the Software, and to permit persons to whom the
17
 * Software is furnished to do so, subject to the following conditions:
18
 *
19
 * The above copyright notice and this permission notice shall be included
20
 * in all copies or substantial portions of the Software.
21
 *
22
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
23
 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
24
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
25
 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
26
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
27
 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
28
 * DEALINGS IN THE SOFTWARE.
29
 ****************************************************************************/
30

    
31
#ifndef CPL_CSV_H_INCLUDED
32
#define CPL_CSV_H_INCLUDED
33

    
34
#include "cpl_conv.h"
35
#include "cpl_string.h"
36
#include "cpl_vsi.h"
37

    
38
CPL_C_START
39

    
40
typedef enum {
41
    CC_ExactString,
42
    CC_ApproxString,
43
    CC_Integer
44
} CSVCompareCriteria;
45

    
46
const char CPL_DLL *CSVFilename( const char * );
47

    
48
char CPL_DLL  **CSVReadParseLine( FILE * );
49
char CPL_DLL **CSVScanLines( FILE *, int, const char *, CSVCompareCriteria );
50
char CPL_DLL **CSVScanFile( const char *, int, const char *,
51
                            CSVCompareCriteria );
52
char CPL_DLL **CSVScanFileByName( const char *, const char *, const char *,
53
                                  CSVCompareCriteria );
54
char CPL_DLL **CSVGetNextLine( const char * );
55
int CPL_DLL CSVGetFieldId( FILE *, const char * );
56
int CPL_DLL CSVGetFileFieldId( const char *, const char * );
57

    
58
void CPL_DLL CSVDeaccess( const char * );
59

    
60
const char CPL_DLL *CSVGetField( const char *, const char *, const char *,
61
                                 CSVCompareCriteria, const char * );
62

    
63
void CPL_DLL SetCSVFilenameHook( const char *(*)(const char *) );
64

    
65
CPL_C_END
66

    
67
#endif /* ndef CPL_CSV_H_INCLUDED */
68