GeoDesk for C++
Fast and storage-efficient spatial database engine for OpenStreetMap features
Loading...
Searching...
No Matches
clarisma Namespace Reference

Classes

class  AbstractStreamWriter
 
class  AnsiColor
 
class  Arena
 
class  ArenaPool
 A fast object pool that uses an Arena as its allocator.
 
class  ArenaStack
 A fast stack that uses an ArenaPool for dynamic memory allocation.
 
class  BitIterator
 
class  BlobPtr
 
class  BlobStore
 
class  Block
 
class  Buffer
 
class  BufferWriter
 
class  CharSchema
 A bitmap consisting of 256 flags that can be used to quickly identify whether a given character is part of a set (e.g.
 
class  ChunkChain
 
class  ChunkedBuffer
 
class  CliApplication
 
class  CliCommand
 
class  CliCommandConfigurator
 
class  CliHelp
 
class  CompactHashTable
 
class  Console
 
class  ConsoleWriter
 
class  Crc32
 
class  DataPtr
 
class  DateTime
 
class  Decimal
 
class  Deduplicator
 A Lookup-based template class that enables de-duplication of items that are represented by a sequence of bytes (such as strings).
 
class  DynamicBuffer
 
class  DynamicStackBuffer
 
class  EncodedVarint26
 A pre-encoded varint representation of a 26-bit integer.
 
class  ExpandableMappedFile
 A MappedFile that grows on demand (if opened in writable mode).
 
class  File
 
class  FileBuffer
 
class  FileBuffer2
 
class  FileLock
 
class  FileNotFoundException
 
class  FilePath
 
class  FileSystem
 
class  FileTime
 
class  FileWriter
 
class  FixedQueue
 
class  HashedStringView
 
class  Highlighter
 
class  IndexFile
 A fast disk-based key-value lookup that stores values in an array, appropriate for keyspaces that are expected to be dense.
 
class  IOException
 
class  Linked
 
class  LinkedList
 
class  LinkedQueue
 
class  Lookup
 Template for classes that look up items in a hashtable using a 64-bit numeric ID.
 
class  LookupBase
 Base template for classes that use hashtable-based lookup.
 
class  MappedFile
 
class  MappedSegment
 
class  MutableDataPtr
 
class  NearPtr
 A pointer that can reference a limited address range, in exchange for a smaller storage footprint.
 
class  Parcel
 
class  ParcelPtr
 
struct  ParsedString
 
class  ParseException
 
class  Parser
 
class  PbfDecoder
 
class  Phaser
 
class  PileFile
 
class  pointer
 
class  ProgressReporter
 
class  PunnedPtr
 
class  QuickSelect
 
class  RefCounted
 
class  ReusableBlock
 
class  ShortString
 A string with a maximum length of 2^16-1 bytes.
 
class  ShortVarString
 A string with a maximum length of 2^14-1 bytes.
 
class  SimpleArena
 A simplified arena allocator.
 
class  SimpleLinkedList
 A simple single-linked list.
 
class  SimpleXmlParser
 
class  Span
 
class  Store
 
class  StoreException
 
class  StreamWriter
 
class  StringBuilder
 
class  StringLookup
 static const S& string(T* p) static uint32_t& next(T* p) uint32_t[]* table() uint32_t tableSize() void* data()
 
class  StringSet
 A fast and memory-efficient set of strings.
 
class  SystemInfo
 
class  Table
 
class  TaggedPtr
 
class  TaskEngine
 
class  TaskQueue
 
class  TaskStatus
 
class  ThreadPool
 
class  TinyString
 A string with a maximum length of 255 bytes.
 
class  TinyStringConstant
 
class  Unicode
 
class  UUID
 
class  Validate
 
class  ValueException
 
class  Xml
 

Typedefs

using ByteBlock = Block<uint8_t>
 
using CharBlock = Block<char>
 
template<class K , class V , class Hash = gtl::priv::hash_default_hash<K>, class Eq = gtl::priv::hash_default_eq<K>, class Alloc = gtl::priv::Allocator<gtl::priv::Pair<const K, V>>>
using HashMap = gtl::flat_hash_map<K,V,Hash,Eq,Alloc>
 A faster replacement for std::unordered_map Alias for GTL Flat Hash Map by Gregory Popovitch https://github.com/greg7mdp/gtl, licensed under Apache 2.0.
 
using ByteSpan = Span<const uint8_t>
 
typedef int FileHandle
 

Enumerations

enum class  VerbosityLevel {
  SILENT , QUIET , NORMAL , VERBOSE ,
  DEBUG
}
 

Functions

template<typename Stream >
Stream & operator<< (Stream &out, const Decimal &d)
 
template<typename Stream >
Stream & operator<< (Stream &out, DateTime dt)
 
template<std::size_t N>
 TinyStringConstant (const char(&)[N]) -> TinyStringConstant< N+1 >
 
template<typename Stream >
Stream & operator<< (Stream &out, const UUID &uuid)
 
uint64_t readVarint35 (const uint8_t *&p)
 
uint32_t readVarint32 (const uint8_t *&p)
 
uint64_t readVarint64 (const uint8_t *&p)
 
int32_t readSignedVarint32 (const uint8_t *&p)
 
int64_t readSignedVarint64 (const uint8_t *&p)
 
std::string_view readStringView (const uint8_t *&p)
 
int countVarints (const void *pStart, const void *pEnd)
 
void skipVarints (const uint8_t *&p, int count)
 
void skipVarintsBackwardUnsafe (const uint8_t *&p, int count)
 Moves pointer backward, skipping over the specified numbers of varints.
 
void writeVarint (uint8_t *&p, uint64_t val)
 
void writeSignedVarint (uint8_t *&p, int64_t val)
 
unsigned int varintSize (uint64_t v)
 Returns the number of bytes required to encode the given unsigned value as a varint (A varint requires one byte for each complete or partial run of 7 significant bits)
 
uint64_t toZigzag (int64_t v)
 
uint32_t toZigzag (int32_t v)
 
int64_t fromZigzag (uint64_t v)
 
int32_t fromZigzag (uint32_t v)
 

Typedef Documentation

◆ ByteBlock

using clarisma::ByteBlock = Block<uint8_t>

◆ ByteSpan

using clarisma::ByteSpan = Span<const uint8_t>

◆ CharBlock

using clarisma::CharBlock = Block<char>

◆ FileHandle

typedef int clarisma::FileHandle

◆ HashMap

template<class K , class V , class Hash = gtl::priv::hash_default_hash<K>, class Eq = gtl::priv::hash_default_eq<K>, class Alloc = gtl::priv::Allocator<gtl::priv::Pair<const K, V>>>
using clarisma::HashMap = gtl::flat_hash_map<K,V,Hash,Eq,Alloc>

A faster replacement for std::unordered_map Alias for GTL Flat Hash Map by Gregory Popovitch https://github.com/greg7mdp/gtl, licensed under Apache 2.0.

Enumeration Type Documentation

◆ VerbosityLevel

enum class clarisma::VerbosityLevel
strong
Enumerator
SILENT 
QUIET 
NORMAL 
VERBOSE 
DEBUG 

Function Documentation

◆ countVarints()

int clarisma::countVarints ( const void * pStart,
const void * pEnd )
inline

◆ fromZigzag() [1/2]

int32_t clarisma::fromZigzag ( uint32_t v)
inline

◆ fromZigzag() [2/2]

int64_t clarisma::fromZigzag ( uint64_t v)
inline

◆ operator<<() [1/3]

template<typename Stream >
Stream & clarisma::operator<< ( Stream & out,
const Decimal & d )

◆ operator<<() [2/3]

template<typename Stream >
Stream & clarisma::operator<< ( Stream & out,
const UUID & uuid )

◆ operator<<() [3/3]

template<typename Stream >
Stream & clarisma::operator<< ( Stream & out,
DateTime dt )

◆ readSignedVarint32()

int32_t clarisma::readSignedVarint32 ( const uint8_t *& p)
inline

◆ readSignedVarint64()

int64_t clarisma::readSignedVarint64 ( const uint8_t *& p)
inline

◆ readStringView()

std::string_view clarisma::readStringView ( const uint8_t *& p)
inline

◆ readVarint32()

uint32_t clarisma::readVarint32 ( const uint8_t *& p)
inline

◆ readVarint35()

uint64_t clarisma::readVarint35 ( const uint8_t *& p)
inline

◆ readVarint64()

uint64_t clarisma::readVarint64 ( const uint8_t *& p)
inline

◆ skipVarints()

void clarisma::skipVarints ( const uint8_t *& p,
int count )
inline

◆ skipVarintsBackwardUnsafe()

void clarisma::skipVarintsBackwardUnsafe ( const uint8_t *& p,
int count )
inline

Moves pointer backward, skipping over the specified numbers of varints.

This function must guarantee the following:

  • p is placed right after the last varint
  • a valid varint must precede the varint to which to skip

◆ TinyStringConstant()

template<std::size_t N>
clarisma::TinyStringConstant ( const char(&)[N]) -> TinyStringConstant< N+1 >

◆ toZigzag() [1/2]

uint32_t clarisma::toZigzag ( int32_t v)
inline

◆ toZigzag() [2/2]

uint64_t clarisma::toZigzag ( int64_t v)
inline

◆ varintSize()

unsigned int clarisma::varintSize ( uint64_t v)
inline

Returns the number of bytes required to encode the given unsigned value as a varint (A varint requires one byte for each complete or partial run of 7 significant bits)

◆ writeSignedVarint()

void clarisma::writeSignedVarint ( uint8_t *& p,
int64_t val )
inline

◆ writeVarint()

void clarisma::writeVarint ( uint8_t *& p,
uint64_t val )
inline