18 #include "qgis_core.h"
45 mutable unsigned char *mP;
46 unsigned char *mStart;
49 void verifyBound(
int size )
const;
51 template<
typename T>
void read( T &v )
const
53 verifyBound(
sizeof v );
54 memcpy( &v, mP,
sizeof v );
58 template<
typename T>
void write( T &v )
const
60 verifyBound(
sizeof v );
61 memcpy( mP, &v,
sizeof v );
65 void write(
const QByteArray &data )
const
67 verifyBound( data.length() );
68 memcpy( mP, data.constData(), data.length() );
81 #if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
95 #if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
110 inline operator unsigned char *()
const {
return mP; }
SIP_SKIP
140 mutable unsigned char *
mP;
149 void verifyBound(
int size )
const SIP_SKIP;
157 verifyBound(
sizeof v );
158 memcpy( &v, mP,
sizeof( v ) );
189 inline operator const unsigned char *()
const {
return mP; }
SIP_SKIP
198 template<
typename T>
void endian_swap( T &value )
const SIP_SKIP
200 char *data =
reinterpret_cast<char *
>( &value );
201 const std::size_t n =
sizeof( value );
202 for ( std::size_t i = 0, m = n / 2; i < m; ++i )
204 std::swap( data[i], data[n - 1 - i] );
QgsWkbTypes::Type mWkbType
const QgsConstWkbPtr & operator>>(float &r) const
int remaining() const
remaining
void read(T &v) const
Read a value.
const QgsConstWkbPtr & operator>>(char &v) const
const QgsConstWkbPtr & operator>>(unsigned int &v) const
const QgsConstWkbPtr & operator>>(int &v) const
Defines a QGIS exception class.
Custom exception class for Wkb related exceptions.
QgsWkbException(QString const &what)
const QgsWkbPtr & operator>>(QgsWkbTypes::Type &v) const
const QgsWkbPtr & operator>>(unsigned int &v) const
QgsWkbPtr & operator<<(char v)
Writes a char to the pointer.
QgsWkbPtr & operator<<(int v)
Writes an int to the pointer.
const QgsWkbPtr & operator>>(float &r) const
QgsWkbPtr & operator<<(unsigned int v)
Writes an unsigned int to the pointer.
QgsWkbPtr & operator<<(float r)
Writes a float to the pointer.
int remaining() const
remaining
const QgsWkbPtr & operator>>(int &v) const
const QgsWkbPtr & operator>>(double &v) const
QgsWkbPtr & operator<<(QgsWkbTypes::Type v)
Writes a WKB type value to the pointer.
QgsWkbPtr & operator<<(qsizetype r)
Writes a size as int to the pointer.
const QgsWkbPtr & operator>>(qsizetype &r) const
Reads an integer value into a qsizetype.
int writtenSize() const
writtenSize
QgsWkbPtr & operator<<(double v)
Writes a double to the pointer.
QgsWkbPtr & operator<<(const QByteArray &data)
Append data from a byte array.
const QgsWkbPtr & operator>>(char &v) const
Type
The WKB type describes the number of dimensions a geometry has.
QDataStream & operator>>(QDataStream &in, QgsFeature &feature)
Reads a feature from stream in into feature. QGIS version compatibility is not guaranteed.