00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef OANDXENGINE_H
00018 #define OANDXENGINE_H
00019
00020 #include <s32std.h>
00021
00022 #include "oandxdefs.h"
00023
00024 class COandXEngine : public CBase
00030 {
00031 public:
00032 static COandXEngine* NewL();
00033 virtual ~COandXEngine();
00034
00035
00036 void Reset();
00037
00038
00039 TTileState TileStatus(TInt aIndex) const;
00040 TBool TryMakeMove(TInt aIndex, TBool aCrossTurn);
00041 TTileState GameWonBy() const;
00042
00043
00044 void ExternalizeL(RWriteStream& aStream) const;
00045 void InternalizeL(RReadStream& aStream);
00046
00047 private:
00048 COandXEngine();
00049
00050 TInt TileState(TInt aX, TInt aY) const;
00051
00052 private:
00057 TFixedArray<TTileState, KNumberOfTiles> iTileStates;
00058 };
00059
00060 #endif // OANDXENGINE_H