#include <FCSOptimizeSolvingAlgorithm.h>
Inheritance diagram for FCSOptimizeSolvingAlgorithm< SolvingAlgorithmType >:

Public Member Functions | |
| FCSOptimizeSolvingAlgorithm (SolvingAlgorithmType *SolvingAlgorithm) | |
| Constructor with current solving algorithm. | |
| virtual | ~FCSOptimizeSolvingAlgorithm () |
| Destructor. | |
| virtual FCSStateSolvingReturnCodes | Solve (FCSStateWithLocations *StateWithLocations, int Depth) |
| Solve the game. | |
| virtual FCSStateSolvingReturnCodes | Resume (int Depth) |
| Resume solving a game. | |
Protected Member Functions | |
| virtual bool | CheckStateEnd (FCSStateWithLocations **NewStateWithLocations, FCSStateWithLocations *StateWithLocations, FCSDerivedStatesList **DerivedStateList, FCSMoveStack **Move, FCSMove **TempMove, int depth, FCSStateSolvingReturnCodes *ReturnCode) |
| Put the last move onto the move stack for the current state. | |
Protected Attributes | |
| int | m_SavedNumberOfStatePacks |
| Number of state packs in first solving algorithm. | |
| AFCSStateWithLocationsMatrix ** | m_SavedStatePacks |
| Pointer to the state packs of the first solving algorithm. | |
Definition at line 18 of file FCSOptimizeSolvingAlgorithm.h.
|
|||||||||
|
The original solving method will delete most of data, we just need to worry about the solution data we create Definition at line 118 of file FCSOptimizeSolvingAlgorithm.h. References FCSOptimizeSolvingAlgorithm< SolvingAlgorithmType >::m_SavedNumberOfStatePacks. |
|
||||||||||||||||||||||||||||||||||||
|
Definition at line 127 of file FCSOptimizeSolvingAlgorithm.h. References CreateMoveStack(), FCSStateWithLocations::m_Depth, FCSStateWithLocations::m_MovesToParent, and FCSStateWithLocations::m_Parent. |
|
||||||||||
|
Since the solution has already been acheived, this shouldn't be necessary, so it will just return FCS_STATE_IS_NOT_SOLVEABLE
Reimplemented from FCSBFSSolvingAlgorithm< SolvingAlgorithmType >. Definition at line 192 of file FCSOptimizeSolvingAlgorithm.h. |
|
||||||||||||||||
|
Reimplemented from FCSBFSSolvingAlgorithm< SolvingAlgorithmType >. Definition at line 198 of file FCSOptimizeSolvingAlgorithm.h. References FCSBFSSolvingAlgorithm< SolvingAlgorithmType >::BFSEnqueueState(), FCSStateWithLocations::GetFreecellCardNumber(), FCSStateWithLocations::GetStackLength(), FCSBFSSolvingAlgorithm< SolvingAlgorithmType >::m_BFSQueue, FCSBFSSolvingAlgorithm< SolvingAlgorithmType >::m_BFSQueueLastItem, FCSStateWithLocations::m_Depth, FCSBFSSolvingAlgorithm< SolvingAlgorithmType >::m_FirstStateToCheck, FCSStateWithLocations::m_MovesToParent, FCSStateWithLocationsLinkedList::m_Next, FCSDerivedStatesList::m_NumberOfStates, FCSStateWithLocations::m_Parent, FCSStateWithLocationsLinkedList::m_State, FCSDerivedStatesList::m_States, FCSStateWithLocations::m_Visited, and FCSStateWithLocations::m_VisitIterations. Referenced by MainOptimize(). |
1.4.4