36 lines
635 B
C++
36 lines
635 B
C++
#pragma once
|
|
|
|
#include <string>
|
|
|
|
|
|
enum PiecesType {
|
|
CONVEX_PIECES,
|
|
HOLELESS_PIECES,
|
|
OTHER_PIECES,
|
|
ALL_PIECES,
|
|
SINGLE_PIECE
|
|
};
|
|
|
|
|
|
inline int getSizeOfPieces(PiecesType type) {
|
|
if (type < SINGLE_PIECE) return 0;
|
|
|
|
else return (type - SINGLE_PIECE + 1);
|
|
}
|
|
|
|
inline PiecesType createSinglePieceType(int size) {
|
|
return PiecesType(SINGLE_PIECE + size - 1);
|
|
}
|
|
|
|
inline std::string getPiecesTypeName(PiecesType piecesType) {
|
|
static const std::string PIECES_TYPE_NAME[] = {
|
|
"CONVEX",
|
|
"HOLELESS",
|
|
"OTHER",
|
|
"ALL",
|
|
"SINGLE"
|
|
};
|
|
|
|
return PIECES_TYPE_NAME[piecesType];
|
|
}
|