twain2/scn_config.h

51 lines
989 B
C
Raw Normal View History

#pragma once
#include <stdio.h>
#include <basetsd.h>
#include <bitset>
#include <map>
#include <bitset>
#include "PublicFunc.h"
typedef unsigned short uint16_t;
class hgConfigClass
{
public:
hgConfigClass();
hgConfigClass(SFreeImage param);
~hgConfigClass();
UINT32 GetData();
private:
enum Config_Scanner
{
cfStaple,
cfSkewDelection,
SkewLevel0,
SkewLevel1,
SkewLevel2
};
void settwSS(UINT32 value);
void setTwPixelType(UINT32 value);
void setResolution(UINT32 value);
void setDoubleFeedEnable(bool value);
void setStapleEnable(bool value);
void setSkewDelection(bool value);
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(uint16_t key);
bool ContainsPixTypeKey(uint16_t key);
bool ContainsResolutionKey(float key);
void setBit(int i, bool flag);
std::bitset<32> m_data;
};