-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathextract.h
23 lines (18 loc) · 893 Bytes
/
extract.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#ifndef EXTRACT_H
#define EXTRACT_H
#include "color.h"
class CubeFace;
using namespace std;
//Determines which colors to return or set based on the face and direction of a rotation
class Extract {
public:
virtual vector<Color> extractLeftFace(CubeFace* cubeface, bool clockwise) const = 0;
virtual vector<Color> extractRightFace(CubeFace* cubeface, bool clockwise) const = 0;
virtual vector<Color> extractTopFace(CubeFace* cubeface, bool clockwise) const = 0;
virtual vector<Color> extractBottomFace(CubeFace* cubeface, bool clockwise) const = 0;
virtual void setLeftFace(CubeFace* cubeface, vector<Color> colors) const = 0;
virtual void setRightFace(CubeFace* cubeface, vector<Color> colors) const = 0;
virtual void setTopFace(CubeFace* cubeface, vector<Color> colors) const = 0;
virtual void setBottomFace(CubeFace* cubeface, vector<Color> colors) const = 0;
};
#endif