twain2/hugaotwainds/scn_config.h

53 lines
1.1 KiB
C++

#pragma once
#include <stdio.h>
#include <basetsd.h>
#include <bitset>
#include <map>
#include <bitset>
#include "PublicFunc.h"
class hgConfigClass
{
public:
hgConfigClass();
~hgConfigClass();
void settwSS(UINT32 value);
void setTwPixelType(UINT32 value);
void setResolution(UINT32 value);
void setDoubleFeedEnable(bool value);
void setStapleEnable(bool value);
void setSkewDelection(bool value);
void setSkewLevel0bit(bool value);
void setSkewLevel1bit(bool value);
void setSkewLevel2bit(bool value);
void setReversed_G400(UINT16 one, UINT16 two);
void setIsCorrect_G400(bool value);
void setDstHeight_G400(UINT16 value);
UINT32 GetData();
private:
enum Config_Scanner
{
cfStaple,
cfSkewDelection,
SkewLevel0,
SkewLevel1,
SkewLevel2
};
std::map<unsigned short, UINT32> paperTypes;
std::map<unsigned short, UINT32> pixType;
std::map<float, UINT32> resolutions;
void initpaperTypes();
void initPixType();
void initResolution();
bool ContainspaperTypesKey(unsigned short key);
bool ContainsPixTypeKey(unsigned short key);
bool ContainsResolutionKey(float key);
void setBit(int i, bool flag);
std::bitset<32> m_data;
};