Files
App-Tarjetas-SMART70/include/SMARTComm70.h
T
2025-07-03 11:39:24 +02:00

332 lines
14 KiB
C++

#pragma once
#include "include/SmartCommon.dll.h"
#include "include/SmartErrCodes.h"
class CSMARTCommon
{
public:
CSMARTCommon(void);
public:
~CSMARTCommon(void);
public:
BOOL Load(LPTSTR dllFile);
void Free();
BOOL IsLoaded();
BOOL IsOpened();
int GetLastResult() { return m_nLastRes; }
public:
int GetDeviceList(SMART70_PRINTER_LIST* pDevList);
int ExGetDeviceList(SMART70_PRINTER_LIST* pDevList, int opt);
int GetDeviceInfo(SMART70_PRINTER_INFO* pDevInfo, WCHAR* szdev, int ndevtype);
int OpenDevice(WCHAR* szdev, int ndevtype);
int ExOpenDevice(WCHAR* szdev, int ndevtype);
int CloseDevice();
int GetStatus(BYTE mod, __int64* pstatus);
int GetRibbonInfo(BYTE mod, int* pnType, int* pnRemain, int* pnMax);
int GetConnectedDevices(SMART70_DEVCONNLIST* pConnList);
int GetConnectedModules(SMART70_DEVCONNLIST* pConnList);
int ICHContact(BYTE mod);
int ICHDiscontact(BYTE mod);
int OpenDocument(LPCTSTR szCSDName);
int CloseDocument();
int ClearDocument(int page);
int GetFieldCount(int* pnCount);
int GetFieldName(int idx, LPTSTR szName, DWORD dwBufLen);
int GetFieldValue(LPCTSTR szName, LPTSTR szValue);
int SetFieldValue(LPCTSTR szName, LPCTSTR szValue);
int DrawImage(BYTE page, BYTE panel, int x, int y, int cx, int cy, WCHAR* szImgPath, RECT* prcArea);
int ExDrawImage(BYTE page, BYTE panel, int x, int y, int cx, int cy, int nScaleMethod, BYTE nAlign, WCHAR* szImgPath, RECT* prcArea);
int DrawBitmap(BYTE page, BYTE panel, int x, int y, int cx, int cy, HBITMAP hbmp, RECT* prcArea);
int DrawText(BYTE page, BYTE panel, int x, int y, WCHAR* szFontName, int nFontSize, BYTE nFontStyle, WCHAR* szText, RECT* prcArea);
int DrawText2(BYTE page, BYTE panel, DT2INFO* pdt2info, WCHAR* szText);
int DrawRect(BYTE page, BYTE panel, int x, int y, int cx, int cy, COLORREF col, RECT* prcArea);
int DrawBarcode(BYTE page, BYTE panel, int x, int y, int cx, int cy, COLORREF col, RECT* prcArea, LPCTSTR szName, int nSize, LPCTSTR szData, LPCTSTR szPost);
int GetBarcodeTypeCount(int* pnCount);
int GetBarcodeTypeName(int idx, LPTSTR szName, int nBufLen);
int GetPreviewBitmap(BYTE page, BITMAPINFO** const ppbi);
int GetDocumentBitmap(BYTE page, BYTE panel, HBITMAP* phbmp);
int GetUnitInfo(S70UNITINFO* pUnit, int dir);
int GetFieldLinkedUnitInfo(WCHAR* szField, S70UNITINFO* pUnit, int dir);
int SetUnitInfo(S70UNITINFO* pUnit);
int GetUnitInfo2(UNITINFO2* pUnit, int dir);
int GetFieldLinkedUnitInfo2(WCHAR* szField, UNITINFO2* pUnit, int dir);
int SetUnitInfo2(UNITINFO2* pUnit);
int GetUnitInfo2Direct(UNITINFO2* pUnit);
int Print();
int SetICG(int page, int nICG);
int GetICG(int page, int* pnICG);
int RFPowerOn(int nDev, int* pnCardType, DWORD* pdwOutLen, BYTE* pOutBuf);
int RFPowerOff(int nDev);
int RFTransmit(int nDev, DWORD dwInLen, BYTE* pInBuf, DWORD* pdwOutLen, BYTE* pOutBuf);
int RFPowerOn2(BYTE mod, DWORD* pdwOutLen, BYTE* pOutBuf);
int RFPowerOff2(BYTE mod);
int RFTransmit2(BYTE mod, DWORD dwInLen, BYTE* pInBuf, DWORD* pdwOutLen, BYTE* pOutBuf);
int ICPowerOn(int nDev, DWORD* pdwOutLen, BYTE* pOutBuf);
int ICPowerOff(int nDev);
int ICTransmit(int nDev, DWORD dwInLen, BYTE* pInBuf, DWORD* pdwOutLen, BYTE* pOutBuf);
int ICPowerOn2(BYTE mod, DWORD* pdwOutLen, BYTE* pOutBuf);
int ICPowerOff2(BYTE mod);
int ICTransmit2(BYTE mod, DWORD dwInLen, BYTE* pInBuf, DWORD* pdwOutLen, BYTE* pOutBuf);
int DCLOpenDevice(WCHAR* szdev, int ndevtype, int nOrientation);
int DCLOpenDevice3(WCHAR* szDev, int port, BOOL bSSL, int nOrientation);
int DCLExOpenDevice(WCHAR* szdev, int ndevtype, int nOrientation);
int DCLCloseDevice();
int DCLPrint(int nPrintSide);
int ReadUserMemory(WCHAR* szPW, int addr, BYTE* btdata);
int WriteUserMemory(WCHAR* szPW, int addr, BYTE* btdata);
#ifdef _WIN64
int ExSetConfig(int nID, __int64 nValue);
int ExGetConfig(int nID, __int64* pnValue);
#else//_WIN64
int ExSetConfig(int nID, int nValue);
int ExGetConfig(int nID, int* pnValue);
#endif//_WIN64
int RequestPreemption(WORD * pwPrmt);
int ReleasePreemption(WORD wPrmt);
int GetModuleState(BYTE mod, BYTE * pstate);
int UpdateModuleState(BYTE mod);
int IsModuleReady(BYTE mod, int* pnReadY);
int IsReadyInsertJob(int* pnReadY);
int ToggleManualMode();
int UpdateCurrPrintJob(BYTE mod);
int GetCurrPrintJob(BYTE mod, WORD* pjobid);
int DeleteCurrPrintJob(BYTE mod);
int CardIn(BYTE module, int dir, int opt);
int CardOut(BYTE module, int dir, int opt);
int CardMove(BYTE fromModule, BYTE toModule, int opt);
int CardMove2(BYTE fromModule, BYTE fromOpt, BYTE toModule, BYTE toOpt, int cmdopt);
int CardListMove(CARDMOVELIST * plist);
int CardMoveQuick(BYTE mod, BYTE opt, int cmdopt);
int CardPass(BYTE mod, BYTE opt, int cmdopt);
int CardFlipPass(BYTE mod, BYTE opt, int cmdopt);
int CardFlip(BYTE modfrom, BYTE modflip, BYTE modto);
int CardFlip2(BYTE modfrom, BYTE modflip, BYTE modto);
int CardFlipStay(BYTE modfrom, BYTE modflip);
int Flip(BYTE mod, int opt, int value);
int CardMoveSensor(BYTE module, int opt1, int value, int opt2);
int CardMovePosition(BYTE module, int pos);
int CardEject(BYTE module);
int CardEjectBin(BYTE mod, BYTE modbin);
int CardEject2(BYTE mod, int opt, BYTE modout, int optout);
int SetEncConfig(BYTE module, int config, int value);
int SetEncConfig2(BYTE module, int config, void* pbuf, int buflen);
int GetEncConfig2(BYTE module, int config, void* pbuf, int* pbuflen);
int SetEncBuffer(BYTE module, BYTE track, int nbuflen, WCHAR* szbuf);
int WriteEncoder(BYTE module, BYTE track, BYTE opt);
int ReadEncoder(BYTE module, BYTE track, BYTE opt);
int FetchEncoder(BYTE module, BYTE track);
int GetEncBuffer(BYTE module, BYTE track, int * pnbufsize, WCHAR* szbuf);
int RunEncoder(BYTE module, BYTE track, int run, void* pbuf, int* pbuflen);
int GetPrinterSettings(BYTE module, SMART70_DEVMODE* pdm);
int SetPrinterSettings(BYTE module, SMART70_DEVMODE* pdm);
int PrintDocument(int opt, int * reserved);
int SetJobCallback(S70CBPROC pfnCB);
int PrintStart(BYTE mod, int opt, int cmdopt);
int GetJobInfo(JOBINFO* pjobinf);
int GetJobInfoEx(JOBINFO_EX* pjobinf);
int NewJobDescriptor(HJOBD * phjd, SM70CB_ERROR pfncbErr);
int FreeJobDescriptor(HJOBD hjd);
int AddJobItem(HJOBD hjd, int ji_type, void * ji_param);
int AddJobItemMove(HJOBD hjd, BYTE from_mid, BYTE from_opt, BYTE to_mid, BYTE to_opt);
int AddJobItemFlip(HJOBD hjd, BYTE from_mid, BYTE flip_mid, BYTE to_mid, BYTE opt);
int AddJobItemMagnetic(HJOBD hjd, BYTE mid, int coer, SM70CB_MAGNETIC pfncb);
int AddJobItemContact(HJOBD hjd, BYTE mid, SM70CB_CONTACT pfncb);
int AddJobItemContactless(HJOBD hjd, BYTE mid, SM70CB_CONTACTLESS pfncb);
int AddJobItemScanImage(HJOBD hjd, BYTE mid, int dpi, int mode, int side, int opt, SM70CB_SCANIMAGE pfncb);
int AddJobItemScanBarcode(HJOBD hjd, BYTE mid, int dpi, int mode, int side, int opt, SM70CB_SCANBARCODE pfncb);
int AddJobItemPrint(HJOBD hjd, BYTE mid, int page, SM70CB_PRINT pfncb);
int AddJobItemLaminate(HJOBD hjd, BYTE mid, int page, SM70CB_LAMINATE pfncb);
int AddJobItemUser(HJOBD hjd, BYTE mid, int opt, SM70CB_USER pfncb);
int InsertJob(HJOBD hjd, int * pjobid);
int ExGetDevParam2(BYTE, WCHAR*, int, int*, int);
int ExSetDevParam2(BYTE, WCHAR*, int, int*, int);
int MagWrite(BYTE mod, BOOL bT1, WCHAR* szT1, BOOL bT2, WCHAR* szT2, BOOL bT3, WCHAR* szT3, BOOL bJIS, WCHAR* szJIS);
int MagRead(BYTE mod, BOOL bT1, WCHAR* szT1, int nT1, BOOL bT2, WCHAR* szT2, int nT2, BOOL bT3, WCHAR* szT3, int nT3, BOOL bJIS, WCHAR* szJIS, int nJIS);
// laser device manager
int LaserConnect();
int LaserDisconnect();
int LaserCheckPort();
int LDrawLine (LLINE *pline, S70Laser *plaser, RECT* prc);
int LDrawRect (LRECT *prect, S70Laser *plaser, RECT* prc);
int LDrawOval (LOVAL *poval, S70Laser *plaser, RECT* prc);
int LDrawRRect (LRRECT *prrc, S70Laser *plaser, RECT* prc);
int LDrawText (LTEXT *ptext, S70Laser *plaser, RECT* prc);
int LDrawBarcode (LBAR *pbar, S70Laser *plaser, RECT* prc);
int LDrawImage (LIMG *pimg, S70Laser *plaser, RECT* prc);
int LDrawBitmap (LBMP *pbmp, S70Laser *plaser, RECT* prc);
private:
HMODULE m_hDll;
HSMART70 m_hSmart;
int m_nLastRes; // return value of last command...
private:
Smart70_GetDeviceList m_pfn_GetDeviceList;
Smart70_ExGetDeviceList m_pfn_ExGetDeviceList;
Smart70_GetDeviceInfo m_pfn_GetDeviceInfo;
Smart70_OpenDevice m_pfn_OpenDevice;
Smart70_ExOpenDevice m_pfn_ExOpenDevice;
Smart70_CloseDevice m_pfn_CloseDevice;
Smart70DCL_OpenDevice m_pfn_DCLOpenDevice;
Smart70DCL_OpenDevice3 m_pfn_DCLOpenDevice3;
Smart70DCL_ExOpenDevice m_pfn_DCLExOpenDevice;
Smart70DCL_CloseDevice m_pfn_DCLCloseDevice;
Smart70DCL_Print m_pfn_DCLPrint;
Smart70_GetRibbonInfo m_pfn_GetRibbonInfo;
Smart70_GetConnectedDevices m_pfn_GetConnectedDevices;
Smart70_GetConnectedModules m_pfn_GetConnectedModules;
Smart70_ICHContact m_pfn_ICHContact;
Smart70_ICHDiscontact m_pfn_ICHDiscontact;
Smart70_OpenDocument m_pfn_OpenDocument;
Smart70_CloseDocument m_pfn_CloseDocument;
Smart70_ClearDocument m_pfn_ClearDocument;
Smart70_GetPrinterSettings m_pfn_GetPrinterSettings;
Smart70_SetPrinterSettings m_pfn_SetPrinterSettings;
Smart70_ReadUserMemory m_pfn_ReadUserMemory;
Smart70_WriteUserMemory m_pfn_WriteUserMemory;
Smart70_GetFieldCount m_pfn_GetFieldCount;
Smart70_GetFieldName m_pfn_GetFieldName;
Smart70_GetFieldValue m_pfn_GetFieldValue;
Smart70_SetFieldValue m_pfn_SetFieldValue;
Smart70_DrawImage m_pfn_DrawImage;
Smart70_ExDrawImage m_pfn_DrawImage2;
Smart70_DrawBitmap m_pfn_DrawBitmap;
Smart70_DrawText m_pfn_DrawText;
Smart70_DrawText2 m_pfn_DrawText2;
Smart70_DrawRect m_pfn_DrawRect;
Smart70_DrawBarcode m_pfn_DrawBarcode;
Smart70_GetBarcodeTypeCount m_pfn_GetBarcodeTypeCount;
Smart70_GetBarcodeTypeName m_pfn_GetBarcodeTypeName;
Smart70_SetICG m_pfn_SetICG;
Smart70_GetICG m_pfn_GetICG;
Smart70_GetPreviewBitmap m_pfn_GetPreviewBitmap;
Smart70_GetUnitInfo m_pfn_GetUnitInfo;
Smart70_GetFieldLinkedUnitInfo m_pfn_GetFieldLinkedUnitInfo;
Smart70_SetUnitInfo m_pfn_SetUnitInfo;
Smart70_GetUnitInfo2 m_pfn_GetUnitInfo2;
Smart70_GetFieldLinkedUnitInfo2 m_pfn_GetFieldLinkedUnitInfo2;
Smart70_SetUnitInfo2 m_pfn_SetUnitInfo2;
Smart70_GetUnitInfo2Direct m_pfn_GetUnitInfo2Direct;
Smart70_GetCountParam m_pfn_GetCountParam;
Smart70_GetCountParamEx m_pfn_GetCountParamEx;
Smart70_GetDisplayInfo m_pfn_GetDisplayInfo;
Smart70_GetSystemInfo m_pfn_GetSystemInfo;
Smart70_RFPowerOn m_pfn_RFPowerOn;
Smart70_RFPowerOff m_pfn_RFPowerOff;
Smart70_RFTransmit m_pfn_RFTransmit;
Smart70_RFPowerOn2 m_pfn_RFPowerOn2;
Smart70_RFPowerOff2 m_pfn_RFPowerOff2;
Smart70_RFTransmit2 m_pfn_RFTransmit2;
Smart70_ICPowerOn m_pfn_ICPowerOn;
Smart70_ICPowerOff m_pfn_ICPowerOff;
Smart70_ICTransmit m_pfn_ICTransmit;
Smart70_ICPowerOn2 m_pfn_ICPowerOn2;
Smart70_ICPowerOff2 m_pfn_ICPowerOff2;
Smart70_ICTransmit2 m_pfn_ICTransmit2;
Smart70_ExSetConfig m_pfn_ExSetConfig;
Smart70_ExGetConfig m_pfn_ExGetConfig;
Smart70_RequestPreemption m_pfn_RequestPreemption;
Smart70_ReleasePreemption m_pfn_ReleasePreemption;
Smart70_GetModuleState m_pfn_GetModuleState;
Smart70_UpdateModuleState m_pfn_UpdateModuleState;
Smart70_GetStatus m_pfn_GetStatus;
Smart70_IsModuleReady m_pfn_IsModuleReady;
Smart70_IsReadyInsertJob m_pfn_IsReadyInsertJob;
Smart70_ToggleManualMode m_pfn_ToggleManualMode;
Smart70_UpdateCurrPrintJob m_pfn_UpdateCurrPrintJob;
Smart70_GetCurrPrintJob m_pfn_GetCurrPrintJob;
Smart70_DeleteCurrPrintJob m_pfn_DeleteCurrPrintJob;
Smart70_CardIn m_pfn_CardIn;
Smart70_CardOut m_pfn_CardOut;
Smart70_CardMove m_pfn_CardMove;
Smart70_CardMove2 m_pfn_CardMove2;
Smart70_CardListMove m_pfn_CardListMove;
Smart70_CardMoveQuick m_pfn_CardMoveQuick;
Smart70_CardPass m_pfn_CardPass;
Smart70_CardFlipPass m_pfn_CardFlipPass;
Smart70_CardFlip m_pfn_CardFlip;
Smart70_CardFlip2 m_pfn_CardFlip2;
Smart70_CardFlipStay m_pfn_CardFlipStay;
Smart70_Flip m_pfn_Flip;
Smart70_CardMoveSensor m_pfn_CardMoveSensor;
Smart70_CardMovePosition m_pfn_CardMovePosition;
Smart70_CardEject m_pfn_CardEject;
Smart70_CardEjectBin m_pfn_CardEjectBin;
Smart70_CardEject2 m_pfn_CardEject2;
Smart70_SetEncConfig m_pfn_SetEncConfig;
Smart70_GetEncConfig2 m_pfn_GetEncConfig2;
Smart70_SetEncConfig2 m_pfn_SetEncConfig2;
Smart70_SetEncBuffer m_pfn_SetEncBuffer;
Smart70_WriteEncoder m_pfn_WriteEncoder;
Smart70_ReadEncoder m_pfn_ReadEncoder;
Smart70_FetchEncoder m_pfn_FetchEncoder;
Smart70_GetEncBuffer m_pfn_GetEncBuffer;
Smart70_RunEncoder m_pfn_RunEncoder;
Smart70_PrintDocument m_pfn_PrintDocument;
Smart70_SetJobCallback m_pfn_SetJobCallback;
Smart70_PrintStart m_pfn_PrintStart;
Smart70_GetJobInfo m_pfn_GetJobInfo;
Smart70_GetJobInfoEx m_pfn_GetJobInfoEx;
Smart70_NewJobDescriptor m_pfn_NewJobDescriptor;
Smart70_FreeJobDescriptor m_pfn_FreeJobDescriptor;
Smart70_AddJobItem m_pfn_AddJobItem;
Smart70_AddJobItemMove m_pfn_AddJobItemMove;
Smart70_AddJobItemFlip m_pfn_AddJobItemFlip;
Smart70_AddJobItemMagnetic m_pfn_AddJobItemMagnetic;
Smart70_AddJobItemContact m_pfn_AddJobItemContact;
Smart70_AddJobItemContactless m_pfn_AddJobItemContactless;
Smart70_AddJobItemScanImage m_pfn_AddJobItemScanImage;
Smart70_AddJobItemScanBarcode m_pfn_AddJobItemScanBarcode;
Smart70_AddJobItemPrint m_pfn_AddJobItemPrint;
Smart70_AddJobItemLaminate m_pfn_AddJobItemLaminate;
Smart70_AddJobItemUser m_pfn_AddJobItemUser;
Smart70_InsertJob m_pfn_InsertJob;
Smart70_ExGetDevParam2 m_pfn_ExGetDevParam2;
Smart70_ExSetDevParam2 m_pfn_ExSetDevParam2;
Smart70_MagWrite m_pfn_MagWrite;
Smart70_MagRead m_pfn_MagRead;
Smart70_LaserConnect m_pfn_LaserConnect;
Smart70_LaserDisconnect m_pfn_LaserDisconnect;
Smart70_LaserCheckPort m_pfn_LaserCheckPort;
Smart70_LDrawLine m_pfn_LDrawLine;
Smart70_LDrawRect m_pfn_LDrawRect;
Smart70_LDrawOval m_pfn_LDrawOval;
Smart70_LDrawRRect m_pfn_LDrawRRect;
Smart70_LDrawText m_pfn_LDrawText;
Smart70_LDrawBarcode m_pfn_LDrawBarcode;
Smart70_LDrawImage m_pfn_LDrawImage;
Smart70_LDrawBitmap m_pfn_LDrawBitmap;
};