This is Cubicle.h in view mode; [Download] [Up]
/* A Cubicle of the Cube 3/27/91 */ #import "cubeTypes.h" typedef CubeCoord CubeFace; class Cubicle { CubeFace faces[CubeDim]; public: Cubicle() { for (CubeAxis axis=0; axis < CubeDim; axis++) faces[axis] = (CubeFace)0; } Cubicle(Cubicle& aCubicle) { for (CubeAxis axis=0; axis < CubeDim; axis++) faces[axis] = aCubicle.faces[axis]; } Cubicle& operator=(Cubicle& aCubicle) { for (CubeAxis axis=0; axis < CubeDim; axis++) faces[axis] = aCubicle.faces[axis]; return *this; } CubeFace& operator[](CubeAxis axis){return faces[axis];} Cubicle& rotate(CubeAxis c1,CubeAxis c2) { CubeFace tempFace; CubeAxis swap[CubeDim]; CubeInt dir=0; for (CubeAxis axis=0; axis < CubeDim; axis++) if ((axis != c1) && (axis != c2)) swap[dir++] = axis; tempFace = faces[swap[LO]]; faces[swap[LO]] =faces[swap[HI]]; faces[swap[HI]] = tempFace; return *this; } };
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.