aboutsummaryrefslogtreecommitdiff
path: root/src/trans.h
blob: 51df12fb213df82dd548a182b66b42577c39ad2d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#ifndef TRANS_H
#define TRANS_H

#include "moves.h"

/*
 * Tables are exposed to allow faster partial transformations in some
 * specific cases (in symcoord)
 */
extern int               epose_ttable[NTRANS][FACTORIAL12/FACTORIAL8];
extern int               eposs_ttable[NTRANS][FACTORIAL12/FACTORIAL8];
extern int               eposm_ttable[NTRANS][FACTORIAL12/FACTORIAL8];
extern int               eo_ttable[NTRANS][POW2TO11];
extern int               cp_ttable[NTRANS][FACTORIAL8];
extern int               co_ttable[NTRANS][POW3TO7];
extern int               cpos_ttable[NTRANS][FACTORIAL6];
extern Move              moves_ttable[NTRANS][NMOVES];

Cube        apply_trans(Trans t, Cube cube);
Trans       inverse_trans(Trans t);
Alg *       rotation_alg(Trans i);
void        transform_alg(Trans i, Alg *alg);

void        init_trans();

#endif

Generated with cgit - Back to sebastiano.tronto.net