walberla::uid Namespace Reference

Namespaces

 suidgenerator
 

Classes

struct  bit_generated_tag
 
class  BitGenerator
 Generates UIDs (unique IDs) per class T starting from 1. More...
 
class  GlobalState
 The global state of the simulation. More...
 
struct  index_generated_tag
 
class  IndexGenerator
 Generates UIDs (unique IDs) per class T starting from 0. More...
 
struct  singleton_generated_tag
 
class  SingletonGenerator
 Generates UIDs (unique IDs) per class T starting from 1. More...
 
struct  standard_generated_tag
 
class  StandardGenerator
 Generates UIDs (unique IDs) per class T starting from 1. More...
 
class  UID
 Class for creating, storing, and managing unique identifiers. More...
 

Typedefs

using SUID = UID< suidgenerator::S >
 unified state/selection UID More...
 

Functions

const Set< SUID > & globalState ()
 convenience function for accessing the global simulation state More...
 
template<typename T >
std::ostream & operator<< (std::ostream &os, const UID< T > &uid)
 
template<typename UINT >
size_t logBase2 (UINT value)
 
template<>
size_t logBase2< uint64_t > (uint64_t value)
 
template<>
size_t logBase2< uint32_t > (uint32_t value)
 
template<typename T >
Set< UID< T > > operator+ (const UID< T > &a, const UID< T > &b)
 
template<typename T >
Set< UID< T > > operator& (const UID< T > &a, const UID< T > &b)
 

Variables

static const uint8_t logBase2LookupTable [256]
 

Typedef Documentation

◆ SUID

unified state/selection UID

Function Documentation

◆ globalState()

const Set<SUID>& walberla::uid::globalState ( )
inline

convenience function for accessing the global simulation state

◆ logBase2()

template<typename UINT >
size_t walberla::uid::logBase2 ( UINT  value)

◆ logBase2< uint32_t >()

template<>
size_t walberla::uid::logBase2< uint32_t > ( uint32_t  value)
inline

◆ logBase2< uint64_t >()

template<>
size_t walberla::uid::logBase2< uint64_t > ( uint64_t  value)
inline

◆ operator&()

template<typename T >
Set< UID<T> > walberla::uid::operator& ( const UID< T > &  a,
const UID< T > &  b 
)
inline

◆ operator+()

template<typename T >
Set< UID<T> > walberla::uid::operator+ ( const UID< T > &  a,
const UID< T > &  b 
)
inline

◆ operator<<()

template<typename T >
std::ostream& walberla::uid::operator<< ( std::ostream &  os,
const UID< T > &  uid 
)
inline

Variable Documentation

◆ logBase2LookupTable

const uint8_t walberla::uid::logBase2LookupTable[256]
static
Initial value:
=
{
#define logBase2LT(n)
0, 0, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3,
4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 4 , 5 , 5 , 5 , 5 , 5 , 5 , 5 , 5 , 5 , 5 , 5 , 5 , 5 , 5 , 5 , 5 , 5 , 5 , 5 , 5 , 5 , 5 , 5 , 5 , 5 , 5 , 5 , 5 , 5 , 5 , 5 , 5 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 , 6 ,
7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7 , 7
}