00001 #include "osl/move_generator/addEffect_.h"
00002 #include "osl/move_generator/addEffect_.tcc"
00003 #include "osl/move_action/store.h"
00004 #include "osl/state/numEffectState.h"
00005 #ifdef RELEASE
00006 #include "osl/move_generator/open.tcc"
00007 #endif
00008
00009 namespace osl{
00010
00011 namespace move_generator
00012 {
00013 typedef move_action::Store store_t;
00014 template void GenerateAddEffect<true>::generate
00015 (Player, const NumEffectState&, Position, store_t&);
00016 template void GenerateAddEffect<false>::generate
00017 (Player, const NumEffectState&, Position, store_t&);
00018
00019 typedef move_action::SafeFilter<BLACK,NumEffectState,store_t> safe_black_t;
00020 typedef move_action::SafeFilter<WHITE,NumEffectState,store_t> safe_white_t;
00021
00022
00023 template void AddEffect<BLACK,false>::generate(const NumEffectState&, Position,
00024 store_t&);
00025 template void AddEffect<WHITE,false>::generate(const NumEffectState&, Position,
00026 store_t&);
00027
00028 template void AddEffect<BLACK, true>::generate(const NumEffectState&, Position, store_t&);
00029 template void AddEffect<WHITE, true>::generate(const NumEffectState&, Position, store_t&);
00030
00031 #ifdef NEED_EXTRA_TEMPLATE_INSTANTIATION
00032 template void AddEffect<BLACK, true>::generate<NumEffectState, move_action::SafeFilter<BLACK, NumEffectState, move_action::Store> >(NumEffectState const&, Position, move_action::SafeFilter<BLACK, NumEffectState, move_action::Store>&);
00033 template void AddEffect<WHITE, true>::generate<NumEffectState, move_action::SafeFilter<WHITE, NumEffectState, move_action::Store> >(NumEffectState const&, Position, move_action::SafeFilter<WHITE, NumEffectState, move_action::Store>&);
00034 #endif
00035
00036 }
00037 }
00038
00039
00040
00041