#ifndef ICONFIG_H #define ICONFIG_H // !ICONFIG_H #include #include "PublicFunc.h" #include "PaperSize.h" static std::map SupPaperTyps = { #ifdef G200 {{TwSS::A3,PaperAlign::Rot0},0}, {{TwSS::A4,PaperAlign::Rot0},1}, {{TwSS::A4,PaperAlign::Rot270},2}, {{TwSS::A5,PaperAlign::Rot0 },2}, {{TwSS::A5,PaperAlign::Rot270},2}, {{TwSS::A6,PaperAlign::Rot0},2}, {{TwSS::A6,PaperAlign::Rot270},2}, {{TwSS::B4,PaperAlign::Rot0},0}, {{TwSS::B5,PaperAlign::Rot0},0}, {{TwSS::B5,PaperAlign::Rot270},1}, {{TwSS::B6,PaperAlign::Rot0},2}, {{TwSS::B6,PaperAlign::Rot270},2}, {{TwSS::USLetter,PaperAlign::Rot0},1}, {{TwSS::USLetter,PaperAlign::Rot270},2}, {{TwSS::USLedger,PaperAlign::Rot0},0}, {{TwSS::USLegal,PaperAlign::Rot0},0}, {{TwSS::None,PaperAlign::Rot0},0}, {{TwSS::USStatement,PaperAlign::Rot0},16}, {{TwSS::MaxSize,PaperAlign::Rot0},16} #else {{TwSS::A3,PaperAlign::Rot0},G400_A3}, {{TwSS::A4,PaperAlign::Rot0},G400_A4}, {{TwSS::A4,PaperAlign::Rot270},G400_A4R}, {{TwSS::A5,PaperAlign::Rot0 },G400_A5}, {{TwSS::A5,PaperAlign::Rot270},G400_A5R}, {{TwSS::A6,PaperAlign::Rot0},G400_A6}, {{TwSS::A6,PaperAlign::Rot270},G400_A6R}, {{TwSS::B4,PaperAlign::Rot0},G400_B4}, {{TwSS::B5,PaperAlign::Rot0},G400_B5}, {{TwSS::B5,PaperAlign::Rot270},G400_B5R}, {{TwSS::B6,PaperAlign::Rot0},G400_B6}, {{TwSS::B6,PaperAlign::Rot270},G400_B6R}, {{TwSS::USLetter,PaperAlign::Rot0},G400_LETTER}, {{TwSS::USLetter,PaperAlign::Rot270},G400_LETTERR}, {{TwSS::USLedger,PaperAlign::Rot0},G400_DOUBLELETTER}, {{TwSS::USLegal,PaperAlign::Rot0},G400_LEGAL}, #ifdef G300 {{TwSS::None,PaperAlign::Rot0},G400_A4}, #else // G300 {{TwSS::None,PaperAlign::Rot0},G400_A3}, #endif {{TwSS::MaxSize,PaperAlign::Rot0},G400_LONGLETTER}, #endif }; static std::map SupPixelTypes = { {0, 0},//bw {1, 0},//gray {2, 1}//color }; static std::map SupResolutions = { {100.0f, 1}, {150.0f, 1}, {200.0f, 1}, {240.0f, 1}, {300.0f, 0}, {600.0f, 1} //临时版本发1 原来发2 }; static std::map secrewMaps = { {1,0}, {2,1}, {3,2}, {4,3}, {5,4} }; typedef union Config_Param { unsigned int value; struct { unsigned int paper : 5; unsigned int color : 1; unsigned int dpi : 2; unsigned int double_feed_enbale : 1; unsigned int stable_enbale : 1; unsigned int screw_detect_enable : 1; unsigned int screw_detect_level : 3;//第十四位 unsigned int unused_one : 6; unsigned int pc_correct : 1; unsigned int unused_two : 11; }; } ConfigParam; class IConfig { public: IConfig(void) {}; virtual ~IConfig(void) {}; virtual unsigned int GetData()=0; protected: }; #endif