00001 /* ratingEnv.h 00002 */ 00003 #ifndef _RATINGENV_H 00004 #define _RATINGENV_H 00005 00006 #include "osl/container/moveStack.h" 00007 #include "osl/container/position8.h" 00008 #include "osl/container/pieceMask.h" 00009 #include "osl/state/numEffectState.h" 00010 #include "osl/progress/progress16.h" 00011 00012 namespace osl 00013 { 00014 namespace rating 00015 { 00016 struct RatingEnv 00017 { 00018 MoveStack history; 00019 Position8 sendoffs; 00020 PieceMask my_pin, op_pin; 00021 int attack_count_for_turn; 00022 Progress16 progress; 00023 mutable CArray<signed char,Position::SIZE> counteffect2_cache; 00024 mutable CArray<int,Position::SIZE> pattern_cache; 00025 00026 void update(const NumEffectState& new_state, Move last_move); 00027 void make(const NumEffectState& new_state); 00028 void make(const NumEffectState& new_state, 00029 const PieceMask& my_pin, const PieceMask& op_pin, Progress16); 00030 }; 00031 } 00032 using rating::RatingEnv; 00033 } 00034 00035 #endif /* _RATINGENV_H */ 00036 // ;;; Local Variables: 00037 // ;;; mode:c++ 00038 // ;;; c-basic-offset:2 00039 // ;;; End: