coffeemaker.h

来自「著名的uncle Bob的Agile software development的」· C头文件 代码 · 共 56 行

H
56
字号
// CoffeeMaker.h: interface for the CCoffeeMaker class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_COFFEEMAKER_H__0A683AD2_1E56_11D3_8F7D_00E09802EAB8__INCLUDED_)
#define AFX_COFFEEMAKER_H__0A683AD2_1E56_11D3_8F7D_00E09802EAB8__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "MIVAPI.h"
#include "Pollable.h"

namespace com_cmindustries_m4_app
{
    class CCoffeeMaker;
};

using com_cmindustries_m4_api::API;
using com_cmindustries_pollable::Pollable;

class com_cmindustries_m4_app::CCoffeeMaker : public Pollable
{
public:
	CCoffeeMaker(API& api);
	virtual ~CCoffeeMaker();

    virtual void Poll();
    virtual void Init();

private:
    enum State {waitToBrew
               ,brewingPotEmpty
               ,brewingAndWarming
               ,brewingComplete
               ,brewedPotRemoved
               ,emptyPotRemoved
               ,fullPotRemoved
               ,initial
    } itsState;

    void BoilerEmpty();
    void BoilerNotEmpty();
    void WarmerEmpty();
    void PotEmpty();
    void PotNotEmpty();
    void BrewButtonPushed();

    API& itsAPI;
    API::BoilerStatus      itsBoilerStatus;
    API::WarmerPlateStatus itsWarmerStatus;
};

#endif // !defined(AFX_COFFEEMAKER_H__0A683AD2_1E56_11D3_8F7D_00E09802EAB8__INCLUDED_)

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?