Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members

FCSStateWithLocationsMatrix< ConcreteClass > Class Template Reference

Concrete class to deal with child classes of FCSStateWithLocation. ConcreteClass is the child class the 2-dimensional array is created in. More...

#include <FCSStateWithLocationsMatrix.h>

Inheritance diagram for FCSStateWithLocationsMatrix< ConcreteClass >:

AFCSStateWithLocationsMatrix List of all members.

Public Member Functions

 FCSStateWithLocationsMatrix (int Size)
 Constructor.
virtual ~FCSStateWithLocationsMatrix ()
 Destructor.
virtual FCSStateWithLocationsGet (int Dim1, int Dim2)
 Get a FCSStateWithLocations child object from a 2-dimensional array.
virtual void Set (int Dim1, FCSStateWithLocations *SetPtr)
 Set an array of FCSStateWithLocations child objects into a 2-dimensional array.
virtual void Create (int Dim1)
 Create a single instance of a FCSStateWithLocations child object in the array.
virtual void CreateArray (int Dim1, int Size)
 Create an array FCSStateWithLocations child objects in the array.
virtual void Delete (int Dim1)
 Delete a single instance of a FCSStateWithLocations child object in the array.
virtual void DeleteArray (int Dim1)
 Delete an array FCSStateWithLocations child objects in the array.
virtual void DeleteStateWithLocationsParent (int Dim1, int Dim2)
 Delete the m_MovesToParent member of an FCSStateWithLocations object in the array.
virtual void ReallocSingle (int Dim1, int OldSize, int NewSize)
 Realloc one of the arrays in the 2-dimensional array.
virtual void ReallocArray (int OldSize, int NewSize)
 Realloc the 2-dimensional array by reallocing the number of ConcreteClass pointers in the array.

Protected Attributes

ConcreteClass ** m_Array
 2-dimensional array of FCSStateWithLocation child objects

Detailed Description

template<class ConcreteClass>
class FCSStateWithLocationsMatrix< ConcreteClass >

This was created because casting multidimensional arrays doesn't work and is very bad coding practice. This is the base class for creating and accessing a 2-dimensional FCSStateWithLocation child classes.

Definition at line 86 of file FCSStateWithLocationsMatrix.h.


Constructor & Destructor Documentation

template<class ConcreteClass>
FCSStateWithLocationsMatrix< ConcreteClass >::FCSStateWithLocationsMatrix int  Size  ) 
 

Parameters:
Size is the number of ConcreteClass pointers in the array

Definition at line 159 of file FCSStateWithLocationsMatrix.h.

References FCSStateWithLocationsMatrix< ConcreteClass >::m_Array.


Member Function Documentation

template<class ConcreteClass>
void FCSStateWithLocationsMatrix< ConcreteClass >::Create int  Dim1  )  [virtual]
 

Parameters:
Dim1 is the dimension to create the object in

Implements AFCSStateWithLocationsMatrix.

Definition at line 184 of file FCSStateWithLocationsMatrix.h.

References FCSStateWithLocationsMatrix< ConcreteClass >::m_Array.

template<class ConcreteClass>
void FCSStateWithLocationsMatrix< ConcreteClass >::CreateArray int  Dim1,
int  Size
[virtual]
 

Parameters:
Dim1 is the dimension to create the object in

Implements AFCSStateWithLocationsMatrix.

Definition at line 191 of file FCSStateWithLocationsMatrix.h.

References FCSStateWithLocationsMatrix< ConcreteClass >::m_Array.

template<class ConcreteClass>
void FCSStateWithLocationsMatrix< ConcreteClass >::Delete int  Dim1  )  [virtual]
 

Parameters:
Dim1 is the dimension to delete the object

Implements AFCSStateWithLocationsMatrix.

Definition at line 197 of file FCSStateWithLocationsMatrix.h.

References FCSStateWithLocationsMatrix< ConcreteClass >::m_Array.

template<class ConcreteClass>
void FCSStateWithLocationsMatrix< ConcreteClass >::DeleteArray int  Dim1  )  [virtual]
 

Parameters:
Dim1 is the dimension to delete the objects

Implements AFCSStateWithLocationsMatrix.

Definition at line 203 of file FCSStateWithLocationsMatrix.h.

References FCSStateWithLocationsMatrix< ConcreteClass >::m_Array.

template<class ConcreteClass>
void FCSStateWithLocationsMatrix< ConcreteClass >::DeleteStateWithLocationsParent int  Dim1,
int  Dim2
[virtual]
 

This is needed because of the dynamic allocation of different FCSStateWithLocations objects

Parameters:
Dim1 is the x position in the array
Dim2 is the y position in the array

Implements AFCSStateWithLocationsMatrix.

Definition at line 209 of file FCSStateWithLocationsMatrix.h.

References FCSStateWithLocationsMatrix< ConcreteClass >::m_Array.

template<class ConcreteClass>
FCSStateWithLocations * FCSStateWithLocationsMatrix< ConcreteClass >::Get int  Dim1,
int  Dim2
[virtual]
 

Parameters:
Dim1 is the first dimension
Dim2 is the second dimension
Returns:
A Pointer to the FCSStateWithLocations child object in the array

Implements AFCSStateWithLocationsMatrix.

Definition at line 171 of file FCSStateWithLocationsMatrix.h.

References FCSStateWithLocationsMatrix< ConcreteClass >::m_Array.

template<class ConcreteClass>
void FCSStateWithLocationsMatrix< ConcreteClass >::ReallocArray int  OldSize,
int  NewSize
[virtual]
 

Parameters:
OldSize is the previous number of pointers
NewSize is the desired number of pointers

Implements AFCSStateWithLocationsMatrix.

Definition at line 222 of file FCSStateWithLocationsMatrix.h.

References FCSStateWithLocationsMatrix< ConcreteClass >::m_Array.

template<class ConcreteClass>
void FCSStateWithLocationsMatrix< ConcreteClass >::ReallocSingle int  Dim1,
int  OldSize,
int  NewSize
[virtual]
 

Parameters:
Dim1 is the dimension that is being realloced
OldSize is the previous number of objects in the array
NewSize is the desired number of objects in the array

Implements AFCSStateWithLocationsMatrix.

Definition at line 216 of file FCSStateWithLocationsMatrix.h.

References FCSStateWithLocationsMatrix< ConcreteClass >::m_Array.

template<class ConcreteClass>
void FCSStateWithLocationsMatrix< ConcreteClass >::Set int  Dim1,
FCSStateWithLocations SetPtr
[virtual]
 

Parameters:
Dim1 is the first dimension in the class array
SetPtr a pointer to an FCSStateWithLocations child object array

Implements AFCSStateWithLocationsMatrix.

Definition at line 177 of file FCSStateWithLocationsMatrix.h.

References FCSStateWithLocationsMatrix< ConcreteClass >::m_Array.


The documentation for this class was generated from the following file:
Generated on Sat Nov 5 11:20:17 2005 for Cpp Freecell Solver by  doxygen 1.4.4