2007-01-09 02:39:15 +00:00
|
|
|
/*! \mainpage Quantum GIS
|
|
|
|
*
|
|
|
|
* \section about About QGIS
|
|
|
|
* Quantum GIS (QGIS) is a user friendly Open Source Geographic Information
|
|
|
|
* System (GIS) that runs on Linux, Unix, Mac OSX, and Windows. QGIS supports
|
|
|
|
* vector, raster, and database formats. QGIS is licensed under the GNU Public
|
|
|
|
* License.
|
|
|
|
*
|
|
|
|
* This API documentation provides information about all classes that make up QGIS.
|
|
|
|
*/
|
|
|
|
|
|
|
|
%ModuleHeaderCode
|
|
|
|
#include <qgis.h>
|
|
|
|
%End
|
|
|
|
|
|
|
|
%ModuleCode
|
|
|
|
int QgisEvent = QEvent::User + 1;
|
|
|
|
%End
|
|
|
|
|
|
|
|
|
|
|
|
class QGis
|
|
|
|
{
|
|
|
|
%TypeHeaderCode
|
|
|
|
#include <qgis.h>
|
|
|
|
%End
|
|
|
|
|
|
|
|
public:
|
|
|
|
// Version constants
|
|
|
|
//
|
|
|
|
// Version string
|
2008-10-10 20:02:22 +00:00
|
|
|
static const char* QGIS_VERSION;
|
2007-01-09 02:39:15 +00:00
|
|
|
// Version number used for comparing versions using the "Check QGIS Version" function
|
2008-10-10 20:02:22 +00:00
|
|
|
static const int QGIS_VERSION_INT;
|
2007-01-09 02:39:15 +00:00
|
|
|
// Release name
|
2008-10-10 20:02:22 +00:00
|
|
|
static const char* QGIS_RELEASE_NAME;
|
2007-01-09 02:39:15 +00:00
|
|
|
// The subversion version
|
2008-10-10 20:02:22 +00:00
|
|
|
static const char* QGIS_SVN_VERSION;
|
2007-01-09 02:39:15 +00:00
|
|
|
|
|
|
|
// Enumerations
|
|
|
|
//
|
|
|
|
|
|
|
|
//! Used for symbology operations
|
|
|
|
// Feature types
|
2008-10-10 20:02:22 +00:00
|
|
|
enum WkbType
|
2007-01-09 02:39:15 +00:00
|
|
|
{
|
|
|
|
WKBPoint = 1,
|
|
|
|
WKBLineString,
|
|
|
|
WKBPolygon,
|
|
|
|
WKBMultiPoint,
|
|
|
|
WKBMultiLineString,
|
|
|
|
WKBMultiPolygon,
|
2008-11-26 11:01:03 +00:00
|
|
|
WKBUnknown,
|
|
|
|
WKBPoint25D = 0x80000001,
|
|
|
|
WKBLineString25D,
|
|
|
|
WKBPolygon25D,
|
|
|
|
WKBMultiPoint25D,
|
|
|
|
WKBMultiLineString25D,
|
|
|
|
WKBMultiPolygon25D
|
2007-01-09 02:39:15 +00:00
|
|
|
};
|
2008-10-10 20:02:22 +00:00
|
|
|
enum GeometryType
|
2007-01-09 02:39:15 +00:00
|
|
|
{
|
|
|
|
Point,
|
|
|
|
Line,
|
|
|
|
Polygon,
|
2008-10-10 20:02:22 +00:00
|
|
|
UnknownGeometry
|
2007-01-09 02:39:15 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
// TODO:
|
|
|
|
//static const char *qgisVectorGeometryType[];
|
|
|
|
//! description strings for feature types
|
|
|
|
//static const char *qgisFeatureTypes[];
|
|
|
|
|
|
|
|
//! map units that qgis supports
|
2008-10-10 20:02:22 +00:00
|
|
|
enum UnitType
|
2007-01-09 02:39:15 +00:00
|
|
|
{
|
2008-10-10 20:02:22 +00:00
|
|
|
Meters,
|
|
|
|
Feet,
|
|
|
|
Degrees,
|
|
|
|
UnknownUnit
|
2007-01-09 02:39:15 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
//! User defined event types
|
|
|
|
enum UserEvent
|
|
|
|
{
|
|
|
|
// These first two are useful for threads to alert their parent data providers
|
|
|
|
|
|
|
|
//! The extents have been calculated by a provider of a layer
|
|
|
|
ProviderExtentCalcEvent = QgisEvent,
|
|
|
|
|
|
|
|
//! The row count has been calculated by a provider of a layer
|
|
|
|
ProviderCountCalcEvent
|
|
|
|
};
|
|
|
|
|
|
|
|
static const int DEFAULT_IDENTIFY_RADIUS;
|
|
|
|
};
|
|
|
|
|
|
|
|
|
2008-10-19 19:20:42 +00:00
|
|
|
/** Wkt string that represents a geographic coord sys */
|
|
|
|
const QString GEOWkt;
|
2007-01-09 02:39:15 +00:00
|
|
|
|
|
|
|
/** PROJ4 string that represents a geographic coord sys */
|
|
|
|
const QString GEOPROJ4;
|
|
|
|
/** Magic number for a geographic coord sys in POSTGIS SRID */
|
|
|
|
const long GEOSRID;
|
|
|
|
/** Magic number for a geographic coord sys in QGIS srs.db tbl_srs.srs_id */
|
2008-08-21 21:11:56 +00:00
|
|
|
const long GEOCRS_ID;
|
2008-10-16 06:31:25 +00:00
|
|
|
/** Magic number for a geographic coord sys in EpsgCrsId ID format */
|
|
|
|
const long GEO_EPSG_CRS_ID;
|
2007-01-09 02:39:15 +00:00
|
|
|
/** The length of teh string "+proj=" */
|
|
|
|
const int PROJ_PREFIX_LEN;
|
|
|
|
/** The length of teh string "+ellps=" */
|
|
|
|
const int ELLPS_PREFIX_LEN;
|
2008-11-26 11:01:03 +00:00
|
|
|
/** The length of the string "+lat_1=" */
|
|
|
|
const int LAT_PREFIX_LEN;
|
2007-01-09 02:39:15 +00:00
|
|
|
/** Magick number that determins whether a projection srsid is a system (srs.db)
|
|
|
|
* or user (~/.qgis.qgis.db) defined projection. */
|
2008-10-10 20:02:22 +00:00
|
|
|
const int USER_CRS_START_ID;
|
2007-01-09 02:39:15 +00:00
|
|
|
|
2008-08-02 07:54:31 +00:00
|
|
|
//
|
|
|
|
// Constants for point symbols
|
|
|
|
//
|
|
|
|
|
|
|
|
/** Magic number that determines the minimum allowable point size for point symbols */
|
|
|
|
const float MINIMUM_POINT_SIZE;
|
|
|
|
/** Magic number that determines the minimum allowable point size for point symbols */
|
|
|
|
const float DEFAULT_POINT_SIZE;
|
2008-11-26 11:01:03 +00:00
|
|
|
const double DEFAULT_LINE_WIDTH;
|
|
|
|
|