ThunderEgg  1.0.0
Face.h File Reference

Face class. More...

#include <ThunderEgg/tpl/json.hpp>
#include <array>
Include dependency graph for Face.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  ThunderEgg::Face< D, M >
 Enum-style class for the faces of an n-dimensional cube. More...
 
class  ThunderEgg::Face< D, M >::Range
 Range class for Face. More...
 
class  ThunderEgg::Face< D, M >::Range::Iterator
 Input iterator for Side values. More...
 

Namespaces

 ThunderEgg
 The ThunderEgg namespace.
 

Typedefs

template<int D>
using ThunderEgg::Side = Face< D, D - 1 >
 Side class. More...
 
using ThunderEgg::Edge = Face< 3, 1 >
 Edge class.
 
template<int D>
using ThunderEgg::Corner = Face< D, 0 >
 Corner class. More...
 

Functions

template<int D>
Side< D > ThunderEgg::HigherSideOnAxis (size_t axis)
 Get the higher side on a given axis. More...
 
template<int D>
Side< D > ThunderEgg::LowerSideOnAxis (size_t axis)
 Get the lower side on a given axis. More...
 
void ThunderEgg::to_json (tpl::nlohmann::json &j, const Side< 1 > &s)
 
void ThunderEgg::to_json (tpl::nlohmann::json &j, const Side< 2 > &s)
 
void ThunderEgg::to_json (tpl::nlohmann::json &j, const Side< 3 > &s)
 
void ThunderEgg::from_json (const tpl::nlohmann::json &j, Side< 1 > &s)
 
void ThunderEgg::from_json (const tpl::nlohmann::json &j, Side< 2 > &s)
 
void ThunderEgg::from_json (const tpl::nlohmann::json &j, Side< 3 > &s)
 
std::ostream & ThunderEgg::operator<< (std::ostream &os, const Side< 1 > &s)
 ostream operator that prints a string representation of side enum. More...
 
std::ostream & ThunderEgg::operator<< (std::ostream &os, const Side< 2 > &s)
 ostream operator that prints a string representation of side enum. More...
 
std::ostream & ThunderEgg::operator<< (std::ostream &os, const Side< 3 > &s)
 ostream operator that prints a string representation of side enum. More...
 
std::ostream & ThunderEgg::operator<< (std::ostream &os, const Edge &o)
 ostream operator that prints a string representation of edge enum. More...
 
void ThunderEgg::to_json (tpl::nlohmann::json &j, const Edge &o)
 
void ThunderEgg::from_json (const tpl::nlohmann::json &j, Edge &o)
 
std::ostream & ThunderEgg::operator<< (std::ostream &os, const Corner< 2 > &o)
 ostream operator that prints a string representation of quadrant enum. More...
 
std::ostream & ThunderEgg::operator<< (std::ostream &os, const Corner< 3 > &o)
 ostream operator that prints a string representation of corner enum. More...
 
void ThunderEgg::to_json (tpl::nlohmann::json &j, const Corner< 2 > &o)
 
void ThunderEgg::to_json (tpl::nlohmann::json &j, const Corner< 3 > &o)
 
void ThunderEgg::from_json (const tpl::nlohmann::json &j, Corner< 2 > &o)
 
void ThunderEgg::from_json (const tpl::nlohmann::json &j, Corner< 3 > &o)
 

Detailed Description

Face class.