walberla::cell Namespace Reference

Classes

class  Cell
 A representation of a Cell's coordinates (in 3D) More...
 
class  CellArray
 An array of cells. More...
 
class  CellInterval
 
class  CellIntervalIterator
 
class  CellSet
 A set of cells. More...
 
class  CellVector
 A vector of cells. More...
 

Functions

std::ostream & operator<< (std::ostream &os, const CellInterval &interval)
 output in the form of "[(3,1,5) ... (4,5,8)]" More...
 
std::istream & operator>> (std::istream &is, CellInterval &interval)
 
template<typename T , typename G >
mpi::GenericSendBuffer< T, G > & operator<< (mpi::GenericSendBuffer< T, G > &buf, const CellInterval &cellInterval)
 
template<typename T >
mpi::GenericRecvBuffer< T > & operator>> (mpi::GenericRecvBuffer< T > &buf, CellInterval &cellInterval)
 
template<typename T , typename G >
mpi::GenericSendBuffer< T, G > & operator<< (mpi::GenericSendBuffer< T, G > &buf, const CellSet &cellSet)
 
template<typename T >
mpi::GenericRecvBuffer< T > & operator>> (mpi::GenericRecvBuffer< T > &buf, CellSet &cellSet)
 
std::ostream & operator<< (std::ostream &os, const CellVector &cells)
 Output stream operator for CellIntervals. More...
 
template<typename T , typename G >
mpi::GenericSendBuffer< T, G > & operator<< (mpi::GenericSendBuffer< T, G > &buf, const CellVector &cellVector)
 
template<typename T >
mpi::GenericRecvBuffer< T > & operator>> (mpi::GenericRecvBuffer< T > &buf, CellVector &cellVector)
 

Function Documentation

◆ hash_value()

std::size_t walberla::cell::hash_value ( const Cell cell)
inline

Provides a hash value for a Cell based on its coordinates.

Parameters
[in]cellThe cell to be hashed.
Returns
a hash that is unique for cell indices from 0 to 2 million (64bit architectures) or from 0 to 1000 (32bit architectures) in all three dimensions.

◆ operator<<() [1/7]

template<typename T , typename G >
mpi::GenericSendBuffer<T,G>& walberla::cell::operator<< ( mpi::GenericSendBuffer< T, G > &  buf,
const Cell cell 
)

◆ operator<<() [2/7]

template<typename T , typename G >
mpi::GenericSendBuffer<T,G>& walberla::cell::operator<< ( mpi::GenericSendBuffer< T, G > &  buf,
const CellInterval cellInterval 
)

◆ operator<<() [3/7]

template<typename T , typename G >
mpi::GenericSendBuffer<T,G>& walberla::cell::operator<< ( mpi::GenericSendBuffer< T, G > &  buf,
const CellSet cellSet 
)

◆ operator<<() [4/7]

template<typename T , typename G >
mpi::GenericSendBuffer<T,G>& walberla::cell::operator<< ( mpi::GenericSendBuffer< T, G > &  buf,
const CellVector cellVector 
)

◆ operator<<() [5/7]

std::ostream & walberla::cell::operator<< ( std::ostream &  os,
const Cell cell 
)
inline

Stream output operator for a Cell object.

Serializes a Cell like (x,y,z). Example: (7,36,1211).

Parameters
[in,out]osThe output stream.
[in]cellThe cell to be serialized.
Returns
A reference to the modified output stream.

◆ operator<<() [6/7]

std::ostream& walberla::cell::operator<< ( std::ostream &  os,
const CellInterval interval 
)
inline

output in the form of "[(3,1,5) ... (4,5,8)]"

◆ operator<<() [7/7]

std::ostream & walberla::cell::operator<< ( std::ostream &  os,
const CellVector cells 
)

Output stream operator for CellIntervals.

The Cell vector is serialized in the Form "[2]{(1 1 1) (1 1 2)}" for a CellVector with 2 entries

Parameters
[in,out]osoutput stream
[in]cellsCellVector to serialize
Returns
the modified output stream.

◆ operator>>() [1/6]

template<typename T >
mpi::GenericRecvBuffer<T>& walberla::cell::operator>> ( mpi::GenericRecvBuffer< T > &  buf,
Cell cell 
)

◆ operator>>() [2/6]

template<typename T >
mpi::GenericRecvBuffer<T>& walberla::cell::operator>> ( mpi::GenericRecvBuffer< T > &  buf,
CellInterval cellInterval 
)

◆ operator>>() [3/6]

template<typename T >
mpi::GenericRecvBuffer<T>& walberla::cell::operator>> ( mpi::GenericRecvBuffer< T > &  buf,
CellSet cellSet 
)

◆ operator>>() [4/6]

template<typename T >
mpi::GenericRecvBuffer<T>& walberla::cell::operator>> ( mpi::GenericRecvBuffer< T > &  buf,
CellVector cellVector 
)

◆ operator>>() [5/6]

std::istream & walberla::cell::operator>> ( std::istream &  is,
Cell cell 
)
inline

Stream input operator for a Cell object.

Deserializes a Cell like (x,y,z). Example: (7,36,1211). Whitespaces between commas or brackets are ignored.

Parameters
[in,out]isThe input stream.
[out]cellThe result cell.
Returns
A reference to the modified input stream.

◆ operator>>() [6/6]

std::istream& walberla::cell::operator>> ( std::istream &  is,
CellInterval interval 
)
inline