nissy-classic

Stable branch of nissy
git clone https://git.tronto.net/nissy-classic
Download | Log | Files | Refs | README | LICENSE

trans.h (853B)


      1 #ifndef TRANS_H
      2 #define TRANS_H
      3 
      4 #include "moves.h"
      5 
      6 /*
      7  * Tables are exposed to allow faster partial transformations in some
      8  * specific cases (in symcoord)
      9  */
     10 extern int               epose_ttable[NTRANS][FACTORIAL12/FACTORIAL8];
     11 extern int               eposs_ttable[NTRANS][FACTORIAL12/FACTORIAL8];
     12 extern int               eposm_ttable[NTRANS][FACTORIAL12/FACTORIAL8];
     13 extern int               eo_ttable[NTRANS][POW2TO11];
     14 extern int               cp_ttable[NTRANS][FACTORIAL8];
     15 extern int               co_ttable[NTRANS][POW3TO7];
     16 extern int               cpos_ttable[NTRANS][FACTORIAL6];
     17 extern Move              moves_ttable[NTRANS][NMOVES];
     18 
     19 Cube        apply_trans(Trans t, Cube cube);
     20 Trans       inverse_trans(Trans t);
     21 Alg *       rotation_alg(Trans i);
     22 void        transform_alg(Trans i, Alg *alg);
     23 
     24 void        init_trans(void);
     25 
     26 #endif