Quantum GIS API Documentation
1.7.5-Wroclaw
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
src
core
qgsdataprovider.h
Go to the documentation of this file.
1
/***************************************************************************
2
qgsdataprovider.h - DataProvider Interface class
3
--------------------------------------
4
Date : 09-Sep-2003
5
Copyright : (C) 2003 by Gary E.Sherman
6
email : sherman at mrcc.com
7
***************************************************************************
8
* *
9
* This program is free software; you can redistribute it and/or modify *
10
* it under the terms of the GNU General Public License as published by *
11
* the Free Software Foundation; either version 2 of the License, or *
12
* (at your option) any later version. *
13
* *
14
***************************************************************************/
15
/* $Id$ */
16
17
#ifndef QQGSDATAPROVIDER_H
18
#define QQGSDATAPROVIDER_H
19
20
#include <QDateTime>
21
#include <QObject>
22
#include <QString>
23
#include <QStringList>
24
25
class
QgsRectangle
;
26
class
QgsCoordinateReferenceSystem
;
27
28
42
class
CORE_EXPORT
QgsDataProvider
:
public
QObject
43
{
44
Q_OBJECT
45
46
public
:
47
48
QgsDataProvider
( QString
const
& uri =
""
)
49
: mDataSourceURI( uri )
50
{}
51
55
virtual
~QgsDataProvider
() {};
56
57
63
virtual
QgsCoordinateReferenceSystem
crs() = 0;
64
65
71
virtual
void
setDataSourceUri
( QString
const
& uri )
72
{
73
mDataSourceURI = uri;
74
}
75
81
virtual
QString
dataSourceUri
()
const
82
{
83
return
mDataSourceURI;
84
}
85
86
91
virtual
QgsRectangle
extent() = 0;
92
93
98
virtual
bool
isValid() = 0;
99
100
104
virtual
void
updateExtents
()
105
{
106
// NOP by default
107
}
108
109
116
virtual
bool
setSubsetString
( QString subset,
bool
updateFeatureCount =
true
)
117
{
118
// NOP by default
119
Q_UNUSED( subset );
120
return
false
;
121
}
122
123
128
virtual
bool
supportsSubsetString
() {
return
false
; }
129
136
virtual
QString
subsetString
()
137
{
138
return
QString::null;
139
}
140
141
148
virtual
QStringList
subLayers
()
const
149
{
150
return
QStringList();
// Empty
151
}
152
153
161
virtual
QStringList
subLayerStyles
()
const
162
{
163
return
QStringList();
// Empty
164
}
165
166
170
virtual
uint
subLayerCount
()
const
171
{
172
return
0;
173
}
174
175
181
virtual
void
setLayerOrder
( QStringList layers )
182
{
183
//prevent unused var warnings
184
if
( layers.count() < 1 )
185
{
186
return
;
187
}
188
// NOOP
189
}
190
191
195
virtual
void
setSubLayerVisibility
( QString name,
bool
vis )
196
{
197
//prevent unused var warnings
198
if
( name.isEmpty() || !vis )
199
{
200
return
;
201
}
202
// NOOP
203
}
204
205
220
virtual
QString name()
const
= 0;
221
222
234
virtual
QString description()
const
= 0;
235
236
248
virtual
QString
fileVectorFilters
()
const
249
{
250
return
""
;
251
}
252
253
265
virtual
QString
fileRasterFilters
()
const
266
{
267
return
""
;
268
}
269
272
virtual
void
reloadData
() {}
273
275
virtual
QDateTime
timestamp
()
const
{
return
mTimestamp; }
276
278
virtual
QDateTime
dataTimestamp
()
const
{
return
QDateTime(); }
279
280
signals:
281
287
void
fullExtentCalculated();
288
294
void
dataChanged();
295
301
void
dataChanged(
int
changed );
302
303
protected
:
307
QDateTime
mTimestamp
;
308
private
:
309
314
QString
mDataSourceURI
;
315
};
316
317
318
#endif
Generated on Thu Sep 19 2013 17:30:54 for Quantum GIS API Documentation by
1.8.4