define.h 2.99 KB
#ifndef DEFINE_H
#define DEFINE_H

#include <QtCore>

#define MAJOR_VER   2
#define MINOR_VER   0
#define HOTFIX_VER  0

// 0 for normal
// 1 for premium
#define MODEL_GRADE 0

namespace Define
{
    enum CookType
    {
        InvalidCookType,
        Poultry,
        Meat,
        Fish,
        Desert,
        Vegetable,
        Bread,
        Etc
    };

    QString icon(CookType type);
    QString name(CookType type);

    enum CookConfigType
    {
        InvalidConfig,
        ConfigNotUsed,
        Brightness,
        BurnDegree,
        SoftBoilDegree,
        PieceSize,
        CrispyDegree,
        MoistDegree,
        Thickness,
        Humidity,
        Temperature,
        Time,
        CoreTemperature,
        Thermometer
    };

    CookConfigType identifyConfigType(QString type);
    QString icon(CookConfigType type);
    QString iconOverlay(CookConfigType type);
    QString iconActiveted(CookConfigType type);
    QString minimum(CookConfigType type);
    QString maximum(CookConfigType type);
    QString name(CookConfigType type);

    enum StepClass
    {
        InvalidClass,
        PreheatClass,
        DoorClass,
        CookClass
    };

    enum StepType
    {
        Invalid,

        Preheat,        // 예열

        PutThermometer, // 중심 온도계 삽입
        Load,           // 식재료 적재
        Cut,            // 자르기
        Pour,           // 물 붓기

        Bake,           // 베이킹
        Dry,            // 건조
        Ferment,        // 발효
        BlowSteam,      // 스팀 쏘이기
        CoolDown,       // 식히기
        Steam,          // 찌기
        Roast,          // 로스팅
        Boil,           // 끓이기
        Thicken,        // 걸쭉하게 만들기
        WarmUp,         // 데우기
        MakeCrispy,     // 바삭하게 만들기
        Finish,         // 피니싱
        Damp,           // 습윤하게 만들기
        Defer,          // 보류
        Grill,          // 그릴
        End,            // 종료
        Burn,           // 그을리기
        Fry,            // 기름에 볶기
        HeatUp,         // 온도 높이기
        Ripen,          // 숙성
        RipenKeep,      // 숙성 & 보존
        BoilSteadily,   // 뭉근하게 끓이기
        CookGratin,     // 그라탱 요리
        Brown,          // 브라우닝
        Simmer,         // 약한 불로 끓이기
        Moisten         // 촉촉하게
    };

    StepType identifyStepType(QString type);
    StepClass classify(StepType type);
    QString icon(StepType type);
    QString name(StepType type);

    enum Mode {
        InvalidMode, SteamMode, DryMode, CombiMode
    };

    Mode identifyMode(QString mode);
    QString name(Mode mode);

    enum Process
    {
        InvalidProcess,
        CookAgain,
        MakeCrisper,
        KeepWarm
    };

    Process identifyProcess(QString type);
    QString icon(Process type);
    QString iconOverlay(Process type);
    QString name(Process type);
}

#endif // DEFINE_H