HOG2
Classes | Enumerations | Functions | Variables
Hexagon.h File Reference
#include <cstdio>
#include <vector>
#include <array>
#include "SearchEnvironment.h"
#include "FPUtil.h"
#include "NBitArray.h"
Include dependency graph for Hexagon.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  HexagonAction
 
class  HexagonState
 
class  Hexagon
 
class  HexagonSearchState
 
class  HexagonEnvironment
 

Enumerations

enum  tPieceName {
  kHexagon = 0, kButterfly = 1, kElbow = 2, kLine = 3,
  kMountains = 4, kWrench = 5, kTriangle = 6, kHook = 7,
  kTrapezoid = 8, kSnake = 9
}
 
enum  tFlipType { kCanFlip = 0, kSide1 = 1, kSide2 = 2 }
 

Functions

static bool operator== (const HexagonState &l1, const HexagonState &l2)
 
static std::ostream & operator<< (std::ostream &out, const HexagonAction &a)
 
static bool operator== (const HexagonAction &l1, const HexagonAction &l2)
 
static bool operator== (const HexagonSearchState &l1, const HexagonSearchState &l2)
 

Variables

const int numPieces = 10
 
const std::string pieceNames [numPieces]
 

Enumeration Type Documentation

◆ tFlipType

enum tFlipType
Enumerator
kCanFlip 
kSide1 
kSide2 

Definition at line 32 of file Hexagon.h.

◆ tPieceName

enum tPieceName
Enumerator
kHexagon 
kButterfly 
kElbow 
kLine 
kMountains 
kWrench 
kTriangle 
kHook 
kTrapezoid 
kSnake 

Definition at line 19 of file Hexagon.h.

Function Documentation

◆ operator<<()

static std::ostream& operator<< ( std::ostream &  out,
const HexagonAction a 
)
static

Definition at line 75 of file Hexagon.h.

◆ operator==() [1/3]

static bool operator== ( const HexagonAction l1,
const HexagonAction l2 
)
static

Definition at line 147 of file Hexagon.h.

References HexagonAction::location, and HexagonAction::piece.

◆ operator==() [2/3]

static bool operator== ( const HexagonSearchState l1,
const HexagonSearchState l2 
)
static

◆ operator==() [3/3]

static bool operator== ( const HexagonState l1,
const HexagonState l2 
)
static

Definition at line 70 of file Hexagon.h.

References HexagonState::state.

Variable Documentation

◆ numPieces

const int numPieces = 10

◆ pieceNames

const std::string pieceNames[numPieces]
Initial value:
=
{
"Hexagon",
"Butterfly",
"Elbow",
"Line",
"Mountains",
"Wrench",
"Triangle",
"Hook",
"Trapezoid",
"Snake"
}

Definition at line 39 of file Hexagon.h.

Referenced by HexagonEnvironment::GeneratePieceCoordinates().