00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef OBSERVER_H
00021 #define OBSERVER_H
00022
00023 #include "src/config.h"
00024 #include "src/domain/animation/frame.h"
00025 #include "src/presentation/frontends/frontend.h"
00026
00027 #include <vector>
00028
00029 using namespace std;
00030
00044 class Observer
00045 {
00046 public:
00054 virtual void updateAdd(const vector<char*>& frames, unsigned int index, Frontend *frontend) = 0;
00055
00056
00062 virtual void updateRemove(unsigned int fromFrame, unsigned int toFrame) = 0;
00063
00064
00071 virtual void updateMove(unsigned int fromFrame, unsigned int toFrame, unsigned int movePosition) = 0;
00072
00073
00078 virtual void updateNewActiveFrame(int frameNumber) = 0;
00079
00080
00084 virtual void updateClear() = 0;
00085
00086
00091 virtual void updatePlayFrame(int frameNumber) = 0;
00092
00093
00099 virtual void updateNewScene(int index) = 0;
00100
00101
00107 virtual void updateRemoveScene(int sceneNumber) = 0;
00108
00115 virtual void updateMoveScene(int sceneNumber, int movePosition) = 0;
00116
00124 virtual void updateNewActiveScene(int sceneNumber, vector<char*> framePaths,
00125 Frontend *frontend) = 0;
00126
00133 virtual void updateAnimationChanged(int frameNumber) = 0;
00134 };
00135
00136 #endif