QGIS API Documentation
3.10.0-A Coruña (6c816b4204)
|
#include <QMetaEnum>
#include <cfloat>
#include <memory>
#include <cmath>
#include "qgstolerance.h"
#include "qgis_core.h"
#include "qgis_sip.h"
Go to the source code of this file.
Classes | |
class | Qgis |
The Qgis class provides global constants for use throughout the application. More... | |
class | QgsSignalBlocker< Object > |
RAII signal blocking class. More... | |
Macros | |
#define | cast_to_fptr(f) f |
#define | FALLTHROUGH |
#define | MAYBE_UNUSED |
#define | NODISCARD Q_REQUIRED_RESULT |
#define | Q_NOWARN_DEPRECATED_POP |
#define | Q_NOWARN_DEPRECATED_PUSH |
#define | Q_NOWARN_UNREACHABLE_POP |
#define | Q_NOWARN_UNREACHABLE_PUSH |
#define | QGISEXTERN extern "C" |
Typedefs | |
typedef unsigned long long | qgssize |
Qgssize is used instead of size_t, because size_t is stdlib type, unknown by SIP, and it would be hard to define size_t correctly in SIP. More... | |
typedef QMap< QString, QString > | QgsStringMap |
Functions | |
void CORE_EXPORT * | qgsCalloc (size_t nmemb, size_t size) |
Allocates memory for an array of nmemb elements of size bytes each and returns a pointer to the allocated memory. More... | |
bool | qgsDoubleNear (double a, double b, double epsilon=4 *std::numeric_limits< double >::epsilon()) |
Compare two doubles (but allow some difference) More... | |
bool | qgsDoubleNearSig (double a, double b, int significantDigits=10) |
Compare two doubles using specified number of significant digits. More... | |
QString | qgsDoubleToString (double a, int precision=17) |
Returns a string representation of a double. More... | |
template<class T > | |
T | qgsEnumKeyToValue (const QString &key, const T &defaultValue) |
Returns the value corresponding to the given key of an enum. More... | |
template<class T > | |
const QMap< T, QString > | qgsEnumMap () |
Returns a map of all enum entries. More... | |
template<class T > | |
QString | qgsEnumValueToKey (const T &value) |
Returns the value for the given key of an enum. More... | |
bool | qgsFloatNear (float a, float b, float epsilon=4 *FLT_EPSILON) |
Compare two floats (but allow some difference) More... | |
void CORE_EXPORT | qgsFree (void *ptr) |
Frees the memory space pointed to by ptr. More... | |
void CORE_EXPORT * | qgsMalloc (size_t size) |
Allocates size bytes and returns a pointer to the allocated memory. More... | |
CORE_EXPORT double | qgsPermissiveToDouble (QString string, bool &ok) |
Converts a string to a double in a permissive way, e.g., allowing for incorrect numbers of digits between thousand separators. More... | |
CORE_EXPORT int | qgsPermissiveToInt (QString string, bool &ok) |
Converts a string to an integer in a permissive way, e.g., allowing for incorrect numbers of digits between thousand separators. More... | |
CORE_EXPORT qlonglong | qgsPermissiveToLongLong (QString string, bool &ok) |
Converts a string to an qlonglong in a permissive way, e.g., allowing for incorrect numbers of digits between thousand separators. More... | |
double | qgsRound (double number, int places) |
Returns a double number, rounded (as close as possible) to the specified number of places. More... | |
CORE_EXPORT bool | qgsVariantEqual (const QVariant &lhs, const QVariant &rhs) |
Compares two QVariant values and returns whether they are equal, two NULL values are always treated as equal and 0 is not treated as equal with NULL. More... | |
CORE_EXPORT bool | qgsVariantGreaterThan (const QVariant &lhs, const QVariant &rhs) |
Compares two QVariant values and returns whether the first is greater than the second. More... | |
CORE_EXPORT bool | qgsVariantLessThan (const QVariant &lhs, const QVariant &rhs) |
Compares two QVariant values and returns whether the first is less than the second. More... | |
CORE_EXPORT QString | qgsVsiPrefix (const QString &path) |
CORE_EXPORT uint | qHash (const QVariant &variant) |
Hash for QVariant. More... | |
template<class Object > | |
QgsSignalBlocker< Object > | whileBlocking (Object *object) |
Temporarily blocks signals from a QObject while calling a single method from the object. More... | |
Variables | |
const double | DEFAULT_LINE_WIDTH = 0.26 |
const double | DEFAULT_POINT_SIZE = 2.0 |
Magic number that determines the default point size for point symbols. More... | |
const double | DEFAULT_SEGMENT_EPSILON = 1e-8 |
Default snapping tolerance for segments. More... | |
CORE_EXPORT const QString | GEO_EPSG_CRS_AUTHID |
Geographic coord sys from EPSG authority. More... | |
const long | GEO_EPSG_CRS_ID = 4326 |
Magic number for a geographic coord sys in EpsgCrsId ID format. More... | |
CORE_EXPORT const QString | GEO_NONE |
Constant that holds the string representation for "No ellips/No CRS". More... | |
const long | GEOCRS_ID = 3452 |
Magic number for a geographic coord sys in QGIS srs.db tbl_srs.srs_id. More... | |
CORE_EXPORT const QString | GEOPROJ4 |
PROJ4 string that represents a geographic coord sys. More... | |
const long | GEOSRID = 4326 |
Magic number for a geographic coord sys in POSTGIS SRID. More... | |
CORE_EXPORT const QString | GEOWKT |
Wkt string that represents a geographic coord sys. More... | |
CORE_EXPORT const QString | PROJECT_SCALES |
const int | USER_CRS_START_ID = 100000 |
Magick number that determines whether a projection crsid is a system (srs.db) or user (~/.qgis.qgis.db) defined projection. More... | |
typedef unsigned long long qgssize |
Qgssize is used instead of size_t, because size_t is stdlib type, unknown by SIP, and it would be hard to define size_t correctly in SIP.
Currently used "unsigned long long" was introduced in C++11 (2011) but it was supported already before C++11 on common platforms. "unsigned long long int" gives syntax error in SIP. KEEP IN SYNC WITH qgssize defined in SIP!
typedef QMap<QString, QString> QgsStringMap |
void CORE_EXPORT* qgsCalloc | ( | size_t | nmemb, |
size_t | size | ||
) |
|
inline |
|
inline |
|
inline |
T qgsEnumKeyToValue | ( | const QString & | key, |
const T & | defaultValue | ||
) |
const QMap<T, QString> qgsEnumMap | ( | ) |
QString qgsEnumValueToKey | ( | const T & | value | ) |
|
inline |
void CORE_EXPORT qgsFree | ( | void * | ptr | ) |
void CORE_EXPORT* qgsMalloc | ( | size_t | size | ) |
CORE_EXPORT double qgsPermissiveToDouble | ( | QString | string, |
bool & | ok | ||
) |
Converts a string to a double in a permissive way, e.g., allowing for incorrect numbers of digits between thousand separators.
string | string to convert |
ok | will be set to true if conversion was successful |
CORE_EXPORT int qgsPermissiveToInt | ( | QString | string, |
bool & | ok | ||
) |
Converts a string to an integer in a permissive way, e.g., allowing for incorrect numbers of digits between thousand separators.
string | string to convert |
ok | will be set to true if conversion was successful |
CORE_EXPORT qlonglong qgsPermissiveToLongLong | ( | QString | string, |
bool & | ok | ||
) |
Converts a string to an qlonglong in a permissive way, e.g., allowing for incorrect numbers of digits between thousand separators.
string | string to convert |
ok | will be set to true if conversion was successful |
|
inline |
CORE_EXPORT bool qgsVariantEqual | ( | const QVariant & | lhs, |
const QVariant & | rhs | ||
) |
CORE_EXPORT bool qgsVariantGreaterThan | ( | const QVariant & | lhs, |
const QVariant & | rhs | ||
) |
Compares two QVariant values and returns whether the first is greater than the second.
Useful for sorting lists of variants, correctly handling sorting of the various QVariant data types (such as strings, numeric values, dates and times)
CORE_EXPORT bool qgsVariantLessThan | ( | const QVariant & | lhs, |
const QVariant & | rhs | ||
) |
Compares two QVariant values and returns whether the first is less than the second.
Useful for sorting lists of variants, correctly handling sorting of the various QVariant data types (such as strings, numeric values, dates and times)
Invalid < NULL < Values
CORE_EXPORT uint qHash | ( | const QVariant & | variant | ) |
|
inline |
Temporarily blocks signals from a QObject while calling a single method from the object.
Usage: whileBlocking( checkBox )->setChecked( true ); whileBlocking( spinBox )->setValue( 50 );
No signals will be emitted when calling these methods.
const double DEFAULT_POINT_SIZE = 2.0 |
const double DEFAULT_SEGMENT_EPSILON = 1e-8 |
CORE_EXPORT const QString GEO_EPSG_CRS_AUTHID |
const long GEO_EPSG_CRS_ID = 4326 |
CORE_EXPORT const QString GEO_NONE |
const long GEOCRS_ID = 3452 |
CORE_EXPORT const QString GEOPROJ4 |
const long GEOSRID = 4326 |
CORE_EXPORT const QString GEOWKT |