HOG2
Macros | Functions
RubiksCubeEdges.cpp File Reference
#include "RubiksCubeEdges.h"
#include "GLUtil.h"
#include <cassert>
#include <string>
#include <thread>
Include dependency graph for RubiksCubeEdges.cpp:

Go to the source code of this file.

Macros

#define MR
 

Functions

RubikEdgeState RotateRubikEdgeClockwise (const RubikEdgeState &in, int step)
 Implementation details: More...
 
template<typename t >
void LocalApplyAction (t &s, RubikEdgeAction a)
 
uint64_t Factorial (int n)
 
int get (uint64_t state, int whichLoc)
 
void set (uint64_t &state, int whichLoc, int cube)
 
void swap (uint64_t &state, int loc1, int loc2)
 

Macro Definition Documentation

◆ MR

#define MR

Definition at line 1335 of file RubiksCubeEdges.cpp.

Function Documentation

◆ Factorial()

uint64_t Factorial ( int  n)
inline

◆ get()

int get ( uint64_t  state,
int  whichLoc 
)
inline

◆ LocalApplyAction()

template<typename t >
void LocalApplyAction ( t &  s,
RubikEdgeAction  a 
)

Definition at line 259 of file RubiksCubeEdges.cpp.

References d.

◆ RotateRubikEdgeClockwise()

RubikEdgeState RotateRubikEdgeClockwise ( const RubikEdgeState in,
int  step 
)

Implementation details:

This just implements the 12 Edges. Corners are labeled from 0...11 as follows

+—6—+ |\ \ | 0 4 7 ___2___\ | | | \ 1 3 8 | | |___9___|

+—6—+ | |\ | | 4 7 5 \ |___11__| | \ \ 3 8 10 | ___9___|

Definition at line 43 of file RubiksCubeEdges.cpp.

References RubikEdgeStateArray::FlipCubeOrientation(), RubikEdgeStateArray::GetCubeInLoc(), RubikEdgeStateArray::GetCubeOrientation(), RubikEdgeStateArray::SetCubeInLoc(), and RubikEdgeStateArray::SetCubeOrientation().

◆ set()

void set ( uint64_t &  state,
int  whichLoc,
int  cube 
)
inline

◆ swap()

void swap ( uint64_t &  state,
int  loc1,
int  loc2 
)
inline