MySQL 8.0.39
Source Code Documentation
Geometry::Flags_t Class Reference

Highest byte is stores byte order, dimension, nomem and geotype as follows: bo: byte order, 1 for little endian(ndr), 0 for big endian(xdr); Currently it must be always wkb_ndr since it is MySQL's portable geometry format. More...

#include <spatial.h>

Public Member Functions

 Flags_t ()
 
 Flags_t (wkbType type, size_t len)
 

Public Attributes

uint64 bo: 1
 
uint64 dim: 2
 
uint64 nomem: 1
 
uint64 geotype: 5
 
uint64 nbytes: 30
 
uint64 props: 12
 
uint64 zm: 2
 
uint64 unused: 11
 

Detailed Description

Highest byte is stores byte order, dimension, nomem and geotype as follows: bo: byte order, 1 for little endian(ndr), 0 for big endian(xdr); Currently it must be always wkb_ndr since it is MySQL's portable geometry format.

dimension: 0~3 for 1~4 dimensions; nomem: indicating whether this object has its own memory. If so, the memory is released when the object is destroyed. Some objects may refer to an existing WKB buffer and access it read only. geotype: stores the wkbType enum numbers, at most 32 values, valid range so far: [0, 7] and 31.

nybytes: takes the following 30 bits, stores number of effective and valid data bytes of current object's wkb data.

props: bits OR'ed for various other runtime properties of the geometry object. Bits are defined above. No properties are stored permanently, all properties here are specified/used at runtime while the Geometry object is alive. zm: not used now, always be 0, i.e. always 2D geometries. In future, they represent Z and/or M settings, 1: Z, 2: M, 3: ZM. unused: reserved for future use, it's unused now.

Constructor & Destructor Documentation

◆ Flags_t() [1/2]

Geometry::Flags_t::Flags_t ( )
inline

◆ Flags_t() [2/2]

Geometry::Flags_t::Flags_t ( wkbType  type,
size_t  len 
)
inline

Member Data Documentation

◆ bo

uint64 Geometry::Flags_t::bo

◆ dim

uint64 Geometry::Flags_t::dim

◆ geotype

uint64 Geometry::Flags_t::geotype

◆ nbytes

uint64 Geometry::Flags_t::nbytes

◆ nomem

uint64 Geometry::Flags_t::nomem

◆ props

uint64 Geometry::Flags_t::props

◆ unused

uint64 Geometry::Flags_t::unused

◆ zm

uint64 Geometry::Flags_t::zm

The documentation for this class was generated from the following file: