예제 #1
0
 public void OnExit(IStateTransitions <TState, TTrigger> transition)
 {
     foreach (Action action in m_exitTriggers)
     {
         action();
     }
 }
예제 #2
0
 public void OnEnter(IStateTransitions <TState, TTrigger> transition)
 {
     foreach (Action action in m_entryTriggers)
     {
         action();
     }
 }
예제 #3
0
 public Brancher(CheckersRules rules, IEvaluator <BoardMinified, sbyte> evaluator,
                 IStateTransitions <BoardMinified, GameNode, sbyte> stateTransitions)
 {
     _rules            = rules;
     _evaluator        = evaluator;
     _stateTransitions = stateTransitions;
 }
예제 #4
0
 public DynamicTreeSplitting(
     IEvaluator <TState, TMetric> evaluator,
     IBrancher <TNode, TState, TMetric> brancher,
     IComparator <TMetric> comparator,
     IStateTransitions <TState, TNode, TMetric> stateTransitions
     )
 {
     _evaluator        = evaluator;
     _brancher         = brancher;
     _comparator       = comparator;
     _stateTransitions = stateTransitions;
     _manualResetEvent = new ManualResetEvent(false);
 }
예제 #5
0
 public SerialAlfaBetaSearch(
     IEvaluator <TState, TMetric> evaluator,
     IBrancher <TNode, TState, TMetric> brancher,
     IComparator <TMetric> comparator,
     IStateTransitions <TState, TNode, TMetric> stateTransitions,
     TMetric maxValue,
     TMetric minValue
     )
 {
     _evaluator        = evaluator;
     _brancher         = brancher;
     _comparator       = comparator;
     _stateTransitions = stateTransitions;
     _minValue         = minValue;
     _maxValue         = maxValue;
 }