00001 #ifndef __STATESPACE_H__
00002 #define __STATESPACE_H__
00003
00004 #include "Ram.h"
00005
00006 class StateSpace {
00007
00008 public:
00009 void init();
00010
00011 void getState (unsigned char _row, unsigned char _column, STATE *_state);
00012 void setState (unsigned char _row, unsigned char _column, STATE *_state);
00013
00014 void setValue (unsigned char _row, unsigned char _column, float _value);
00015 void setBestAction (unsigned char _row, unsigned char _column, unsigned char _action);
00016 void setFeedback (unsigned char _row, unsigned char _column, unsigned char _action, char _fb);
00017
00018 double getValue (unsigned char _row, unsigned char _column);
00019 unsigned char getBestAction (unsigned char _row, unsigned char _column);
00020 char getFeedback (unsigned char _row, unsigned char _column, unsigned char _action);
00021
00022 void ramtestSaveBytes(unsigned int _addr, unsigned char *data, unsigned char _length);
00023 void ramtestReadBytes(unsigned int _addr, unsigned char *data, unsigned char _length);
00024 unsigned int getMemorySize();
00025
00026 unsigned char scalX, scalY;
00027 bool useInternalRAM;
00028
00029 private:
00030 STATE tmpState;
00031
00032
00033 unsigned char internStateSpace[STATESIZE*MAX_STATES];
00034
00035
00036 Ram ram1;
00037 };
00038
00039
00040 #endif
00041