All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
centering3x3.cc
Go to the documentation of this file.
1 /* centering3x3.cc
2  */
3 #include "osl/centering3x3.h"
4 #include "osl/square.h"
5 
8 {
9  centers.fill(Square::STAND());
10  for (int y=1; y<=9; ++y)
11  {
12  for (int x=1; x<=9; ++x)
13  {
14  const Square src = Square(x,y);
15  centers[src.index()] = adjustCenterNaive(src);
16  }
17  }
18 }
19 
20 namespace
21 {
22  int adjustCenterXY(int xy)
23  {
24  if (xy == 1)
25  return xy+1;
26  else if (xy == 9)
27  return xy-1;
28  return xy;
29  }
30 } // anonymous namespace
31 
32 const osl::Square osl::
34 {
35  const int x = adjustCenterXY(src.x());
36  const int y = adjustCenterXY(src.y());
37  return Square(x, y);
38 }
39 
40 /* ------------------------------------------------------------------------- */
41 // ;;; Local Variables:
42 // ;;; mode:c++
43 // ;;; c-basic-offset:2
44 // ;;; End: