Added HangmanGame class, but does not work yet

Dependencies:   SDFileSystem app epson mbed msp430 pl tests

Committer:
markpsymonds
Date:
Mon Dec 04 20:15:18 2017 +0000
Revision:
1:a5ec6f9dcf0d
Parent:
0:fa7450a43b99
Fixed most compile issues in hangman.cpp/.h.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
group-FlexBook 0:fa7450a43b99 1 //
group-FlexBook 0:fa7450a43b99 2 // Filename: pagefactory.h
group-FlexBook 0:fa7450a43b99 3 //
group-FlexBook 0:fa7450a43b99 4 // Flexbook page creator.
group-FlexBook 0:fa7450a43b99 5 //
group-FlexBook 0:fa7450a43b99 6
group-FlexBook 0:fa7450a43b99 7 #include "pagefactory.h"
group-FlexBook 0:fa7450a43b99 8
group-FlexBook 0:fa7450a43b99 9 #include "hal.h"
group-FlexBook 0:fa7450a43b99 10 #include "log.h"
group-FlexBook 0:fa7450a43b99 11
group-FlexBook 0:fa7450a43b99 12 #include "pagesensor.h"
group-FlexBook 0:fa7450a43b99 13 #include "pagedice.h"
group-FlexBook 0:fa7450a43b99 14 #include "pageoled.h"
group-FlexBook 0:fa7450a43b99 15 #include "pagetouch.h"
group-FlexBook 0:fa7450a43b99 16 #include "pageflexenable.h"
group-FlexBook 0:fa7450a43b99 17 #include "pagenfc.h"
group-FlexBook 0:fa7450a43b99 18
group-FlexBook 0:fa7450a43b99 19 #include <iostream>
group-FlexBook 0:fa7450a43b99 20
group-FlexBook 0:fa7450a43b99 21 namespace Flexbook {
group-FlexBook 0:fa7450a43b99 22
group-FlexBook 0:fa7450a43b99 23 PageFactory::PageFactory()
group-FlexBook 0:fa7450a43b99 24 {
group-FlexBook 0:fa7450a43b99 25 Log("Creating PageFactory");
group-FlexBook 0:fa7450a43b99 26 }
group-FlexBook 0:fa7450a43b99 27
group-FlexBook 0:fa7450a43b99 28 PageFactory::~PageFactory()
group-FlexBook 0:fa7450a43b99 29 {
group-FlexBook 0:fa7450a43b99 30 Log("Deleting PageFactory");
group-FlexBook 0:fa7450a43b99 31 }
group-FlexBook 0:fa7450a43b99 32
group-FlexBook 0:fa7450a43b99 33 BookPage PageFactory::CreatePages(PageType &type)
group-FlexBook 0:fa7450a43b99 34 {
group-FlexBook 0:fa7450a43b99 35
group-FlexBook 0:fa7450a43b99 36 switch(type)
group-FlexBook 0:fa7450a43b99 37 {
group-FlexBook 0:fa7450a43b99 38 case PageType_PageSensor:
group-FlexBook 0:fa7450a43b99 39
group-FlexBook 0:fa7450a43b99 40 HAL::EnablePowerToPages(PageType_PageSensor | PageType_PageOLED);
group-FlexBook 0:fa7450a43b99 41 return BookPage(new PageSensor);
group-FlexBook 0:fa7450a43b99 42
group-FlexBook 0:fa7450a43b99 43 case PageType_PageDice:
group-FlexBook 0:fa7450a43b99 44
group-FlexBook 0:fa7450a43b99 45 HAL::EnablePowerToPages(PageType_PageDice | PageType_PageOLED);
group-FlexBook 0:fa7450a43b99 46 return BookPage(new PageDice);
group-FlexBook 0:fa7450a43b99 47
group-FlexBook 0:fa7450a43b99 48 case PageType_PageOLED:
group-FlexBook 0:fa7450a43b99 49
group-FlexBook 0:fa7450a43b99 50 HAL::EnablePowerToPages(PageType_PageOLED);
group-FlexBook 0:fa7450a43b99 51 return BookPage(new PageOLED);
group-FlexBook 0:fa7450a43b99 52
group-FlexBook 0:fa7450a43b99 53 case PageType_PageTouch:
group-FlexBook 0:fa7450a43b99 54
group-FlexBook 0:fa7450a43b99 55 HAL::EnablePowerToPages(PageType_PageTouch | PageType_PageFlexEnable);
group-FlexBook 0:fa7450a43b99 56 return BookPage(new PageTouch);
group-FlexBook 0:fa7450a43b99 57
group-FlexBook 0:fa7450a43b99 58 case PageType_PageFlexEnable:
group-FlexBook 0:fa7450a43b99 59
group-FlexBook 0:fa7450a43b99 60 HAL::EnablePowerToPages(PageType_PageFlexEnable);
group-FlexBook 0:fa7450a43b99 61 return BookPage(new PageFlexEnable);
group-FlexBook 0:fa7450a43b99 62
group-FlexBook 0:fa7450a43b99 63 case PageType_PageNFC:
group-FlexBook 0:fa7450a43b99 64
group-FlexBook 0:fa7450a43b99 65 HAL::EnablePowerToPages(PageType_PageNFC);
group-FlexBook 0:fa7450a43b99 66 return BookPage(new PageNFC);
group-FlexBook 0:fa7450a43b99 67
group-FlexBook 0:fa7450a43b99 68 case PageType_PageNull:
group-FlexBook 0:fa7450a43b99 69
group-FlexBook 0:fa7450a43b99 70 HAL::EnablePowerToPages(PageType_PageNull);
group-FlexBook 0:fa7450a43b99 71 Log("NULL page");
group-FlexBook 0:fa7450a43b99 72 break;
group-FlexBook 0:fa7450a43b99 73
group-FlexBook 0:fa7450a43b99 74 default:
group-FlexBook 0:fa7450a43b99 75
group-FlexBook 0:fa7450a43b99 76 Log("Error - unknown page type");
group-FlexBook 0:fa7450a43b99 77 break;
group-FlexBook 0:fa7450a43b99 78 }
group-FlexBook 0:fa7450a43b99 79
group-FlexBook 0:fa7450a43b99 80 return BookPage(nullptr);
group-FlexBook 0:fa7450a43b99 81 }
group-FlexBook 0:fa7450a43b99 82
group-FlexBook 0:fa7450a43b99 83 } // End Flexbook namespace.
group-FlexBook 0:fa7450a43b99 84
group-FlexBook 0:fa7450a43b99 85
group-FlexBook 0:fa7450a43b99 86