GDAL

- Main Page
- Related Pages
- Classes
- Files

- File List
- File Members

gdal_vrt.h
Go to the documentation of this file.
1 /******************************************************************************
2 * $Id: gdal_vrt.h 33720 2016-03-15 00:39:53Z goatbar $
3 *
4 * Project: Virtual GDAL Datasets
5 * Purpose: C/Public declarations of virtual GDAL dataset objects.
6 * Author: Andrey Kiselev, dron@ak4719.spb.edu
7 *
8 ******************************************************************************
9 * Copyright (c) 2007, Andrey Kiselev <dron@ak4719.spb.edu>
10 *
11 * Permission is hereby granted, free of charge, to any person obtaining a
12 * copy of this software and associated documentation files (the "Software"),
13 * to deal in the Software without restriction, including without limitation
14 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
15 * and/or sell copies of the Software, and to permit persons to whom the
16 * Software is furnished to do so, subject to the following conditions:
17 *
18 * The above copyright notice and this permission notice shall be included
19 * in all copies or substantial portions of the Software.
20 *
21 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
22 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
23 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
24 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
25 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
26 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
27 * DEALINGS IN THE SOFTWARE.
28 ****************************************************************************/
29
30 #ifndef GDAL_VRT_H_INCLUDED
31 #define GDAL_VRT_H_INCLUDED
32
39 #include "gdal.h"
40 #include "cpl_port.h"
41 #include "cpl_error.h"
42 #include "cpl_minixml.h"
43
44 #define VRT_NODATA_UNSET -1234.56
45
46 CPL_C_START
47
48 void GDALRegister_VRT();
49 typedef CPLErr
50 (*VRTImageReadFunc)( void *hCBData,
51 int nXOff, int nYOff, int nXSize, int nYSize,
52 void *pData );
53
54 /* -------------------------------------------------------------------- */
55 /* Define handle types related to various VRT dataset classes. */
56 /* -------------------------------------------------------------------- */
57 typedef void *VRTDriverH;
58 typedef void *VRTSourceH;
59 typedef void *VRTSimpleSourceH;
60 typedef void *VRTAveragedSourceH;
61 typedef void *VRTComplexSourceH;
62 typedef void *VRTFilteredSourceH;
63 typedef void *VRTKernelFilteredSourceH;
64 typedef void *VRTAverageFilteredSourceH;
65 typedef void *VRTFuncSourceH;
66 typedef void *VRTDatasetH;
67 typedef void *VRTWarpedDatasetH;
68 typedef void *VRTRasterBandH;
69 typedef void *VRTSourcedRasterBandH;
70 typedef void *VRTWarpedRasterBandH;
71 typedef void *VRTDerivedRasterBandH;
72 typedef void *VRTRawRasterBandH;
73
74 /* ==================================================================== */
75 /* VRTDataset class. */
76 /* ==================================================================== */
77
78 VRTDatasetH CPL_DLL CPL_STDCALL VRTCreate( int, int );
79 void CPL_DLL CPL_STDCALL VRTFlushCache( VRTDatasetH );
80 CPLXMLNode CPL_DLL * CPL_STDCALL VRTSerializeToXML( VRTDatasetH, const char * );
81 int CPL_DLL CPL_STDCALL VRTAddBand( VRTDatasetH, GDALDataType, char ** );
82
83 /* ==================================================================== */
84 /* VRTSourcedRasterBand class. */
85 /* ==================================================================== */
86
87 CPLErr CPL_STDCALL VRTAddSource( VRTSourcedRasterBandH, VRTSourceH );
88 CPLErr CPL_DLL CPL_STDCALL VRTAddSimpleSource( VRTSourcedRasterBandH,
89 GDALRasterBandH,
90 int, int, int, int,
91 int, int, int, int,
92 const char *, double );
93 CPLErr CPL_DLL CPL_STDCALL VRTAddComplexSource( VRTSourcedRasterBandH,
94 GDALRasterBandH,
95 int, int, int, int,
96 int, int, int, int,
97 double, double, double );
98 CPLErr CPL_DLL CPL_STDCALL VRTAddFuncSource( VRTSourcedRasterBandH,
99 VRTImageReadFunc,
100 void *, double );
101
102 CPL_C_END
103
104 #endif /* GDAL_VRT_H_INCLUDED */
GDALDataType
GDALDataType
Definition: gdal.h:57
CPLXMLNode
Document node structure.
Definition: cpl_minixml.h:65
cpl_minixml.h
Definitions for CPL mini XML Parser/Serializer.
cpl_port.h
Core portability definitions for CPL.
VRTAddSimpleSource
CPLErr VRTAddSimpleSource(VRTSourcedRasterBandH, GDALRasterBandH, int, int, int, int, int, int, int, int, const char *, double)
Definition: vrtsourcedrasterband.cpp:966
VRTCreate
VRTDatasetH VRTCreate(int, int)
Definition: vrtdataset.cpp:80
GDALRasterBandH
void * GDALRasterBandH
Opaque type used for the C bindings of the C++ GDALRasterBand class.
Definition: gdal.h:233
VRTAddSource
CPLErr VRTAddSource(VRTSourcedRasterBandH, VRTSourceH)
Definition: vrtsourcedrasterband.cpp:730
VRTAddFuncSource
CPLErr VRTAddFuncSource(VRTSourcedRasterBandH, VRTImageReadFunc, void *, double)
Definition: vrtsourcedrasterband.cpp:1095
VRTAddBand
int VRTAddBand(VRTDatasetH, GDALDataType, char **)
Definition: vrtdataset.cpp:1070
VRTSerializeToXML
CPLXMLNode * VRTSerializeToXML(VRTDatasetH, const char *)
Definition: vrtdataset.cpp:308
gdal.h
Public (C callable) GDAL entry points.
cpl_error.h
CPL error handling services.
VRTAddComplexSource
CPLErr VRTAddComplexSource(VRTSourcedRasterBandH, GDALRasterBandH, int, int, int, int, int, int, int, int, double, double, double)
Definition: vrtsourcedrasterband.cpp:1040
VRTFlushCache
void VRTFlushCache(VRTDatasetH)
Definition: vrtdataset.cpp:200

Generated for GDAL by 1.8.8.