#include "pch.h"
#include "framework.h"
#include "JsonSDK.h"
#include "JsonMng.h"
#include "RfidMonitor.h"
#include "OdvMonitor.h"
#include "PrinterMonitor.h"
列舉型態 | |
enum | INFO_TYP { ODV_TYP = 0 , RFID_TYP , PRINTER_TYP } |
函式 | |
DLLEXVOID | MessengerGet (CObject *ptrComm, COMM_TYP commTyp, int maxInputMsgCapacity, bool usingDataPort) |
建立一個頻道,用於發送/接收管理訊息,並指定最大容量。 | |
DLLEXVOID | MessengerRelease () |
釋放訊息傳輸介面資源 | |
DLLEXVOID | MessengerSendMsg (char *strCommand, char *strContent) |
向印表機發送管理指令和資料/內容。 | |
DLLEXVOID | MessengerReadNextMsg (const char **strNextMsg) |
讀取已經從印表機非同步接收的下一則訊息。 | |
DLLEXVOID | MessengerSendMsgAndWaitForResponse (char *strCommand, char *strContent, int maxWaitTimeSecs, const char **strResponse) |
將管理命令和數據/內容發送到印表機,並等待 maxWaitTimeSecs 秒的回應。 | |
DLLEXINT | MessengerUnreadMsgCount () |
獲取未讀消息的數量。 | |
DLLEXVOID | RfidMonitorConnection (char *lpAddress) |
使用網路介面 (NET Interface) 連接印表機以啟用 RFID 監控功能。 | |
DLLEXVOID | OdvMonitorConnection (char *lpAddress) |
使用網路介面 (NET Interface) 連接印表機以啟用 ODV 監控功能。 | |
DLLEXVOID | PrinterMonitorConnection (char *lpAddress, INFO_TYP InfoTyp) |
使用網路介面 (NET Interface) 連接印表機以啟用印表機監控功能。 | |
DLLEXVOID | GetPrinterInfo (stPrinterInfo *pPrtInfo, INFO_TYP InfoTyp) |
獲取印表機功能的相關信息。 | |
DLLEXBOOL | GetRfidReportListening () |
獲取 RFID 報告監聽的標誌。 | |
DLLEXVOID | SetRfidReportListening (bool value) |
設置 RFID 報告監聽的標誌。 | |
DLLEXBOOL | GetOdvReportListening () |
獲取 ODV 報告監聽的標誌。 | |
DLLEXVOID | SetOdvReportListening (bool value) |
設置 ODV 報告監聽的標誌。 | |
DLLEXVOID | RfidMonitorDispose () |
釋放 RFID 監控資源。 | |
DLLEXVOID | OdvMonitorDispose () |
釋放 ODV 監控資源。 | |
DLLEXVOID | PrinterMonitorDispose (INFO_TYP InfoTyp) |
釋放印表機監控資源。 | |
DLLEXVOID | SetRfidReportCallback (void callback(const RfidReport &report)) |
設置一個回調函數來獲取 RFID 報告。 | |
DLLEXVOID | SetOdvReportCallback (void callback(const OdvReport &report)) |
設置一個回調函數來獲取 ODV 報告。 | |
DLLEXVOID | SetEngineStatusListening (bool value) |
設置印表機報告監聽引擎狀態的標誌。 | |
DLLEXVOID | SetDisplayStatusListening (bool value) |
設置印表機報告監聽螢幕狀態的標誌。 | |
DLLEXVOID | SetAlertStatusListening (bool value) |
設置印表機報告監聽警報狀態的標誌。 | |
DLLEXBOOL | GetEngineStatusListening () |
獲取引擎狀態監聽的標誌。 | |
DLLEXBOOL | GetDisplayStatusListening () |
獲取顯示狀態監聽的標誌。 | |
DLLEXBOOL | GetAlertStatusListening () |
獲取警報狀態監聽的標誌。 | |
DLLEXVOID | SetEngineStatusCallback (void callback(const std::string &engineState)) |
設置印表機報告監聽警報狀態的標誌。 | |
DLLEXVOID | SetDisplayStatusCallback (void callback(const std::vector< std::string > &newDisplayText)) |
設置印表機報告監聽螢幕狀態的標誌。 | |
DLLEXVOID | SetAlertStatusCallback (void callback(const std::vector< std::string > &alert)) |
設置一個回傳數來獲取警報狀態。 | |
DLLEXPCHAR | GetPrinterAllValues (CObject *ptrComm, COMM_TYP commTyp, bool usingDataPort) |
獲取印表機的所有設置。 | |
DLLEXPCHAR | GetPrinterValue (CObject *ptrComm, COMM_TYP commTyp, bool usingDataPort, const char *key) |
獲取印表機的單一設置。 | |
DLLEXPCHAR | GetPrinterValues (CObject *ptrComm, COMM_TYP commTyp, bool usingDataPort, const std::vector< std::string > &keys) |
獲取印表機的多個設置。 | |
DLLEXBOOL | SetPrinterValue (CObject *ptrComm, COMM_TYP commTyp, bool usingDataPort, const char *key, const char *value) |
設定印表機的單一設置。 | |
DLLEXBOOL | SetPrinterValues (CObject *ptrComm, COMM_TYP commTyp, bool usingDataPort, std::map< std::string, std::string > *keysToSet) |
設定印表機的多個設置。 | |
DLLEXPCHAR | GetPrinterProperties (CObject *ptrComm, COMM_TYP commTyp, bool usingDataPort, const char *key) |
獲取印表機的單一屬性。 | |
DLLEXPCHAR | GetPrinterPropertiesEx (CObject *ptrComm, COMM_TYP commTyp, bool usingDataPort, const char *keys[], size_t count) |
獲取印表機的多個屬性。 | |
DLLEXPCHAR | GetPrinterAllProperties (CObject *ptrComm, COMM_TYP commTyp, bool usingDataPort) |
獲取印表機的所有屬性。 | |
DLLEXVOID | FreeString (char *str) |
釋放字串資源。 | |
DLLEXPCHAR | GetPrinterConfig (CObject *ptrComm, COMM_TYP commTyp, bool usingDataPort, int CfgNumber) |
獲取印表機的單一組態設定。 | |
DLLEXBOOL | SetPrinterConfig (CObject *ptrComm, COMM_TYP commTyp, bool usingDataPort, char *pConfig) |
設定印表機的單一組態設定。 | |
DLLEXPCHAR | GetPrinterAllConfig (CObject *ptrComm, COMM_TYP commTyp, bool usingDataPort) |
獲取印表機的所有組態設定。 | |
變數 | |
CJsonSDKApp | theApp |
JsonMessenger | gJsonMessenger |
RfidMonitor | gRfidMonitor |
RfidReport | gRfidReport |
OdvMonitor | gOdvMonitor |
PrinterMonitor | gPrinterMonitor_Rfid |
PrinterMonitor | gPrinterMonitor_Odv |
PrinterMonitor | gPrinterMonitor |
static std::string | AllMsg |
enum INFO_TYP |
DLLEXVOID FreeString | ( | char * | str | ) |
DLLEXBOOL GetAlertStatusListening | ( | ) |
獲取警報狀態監聽的標誌。
DLLEXBOOL GetDisplayStatusListening | ( | ) |
獲取顯示狀態監聽的標誌。
DLLEXBOOL GetEngineStatusListening | ( | ) |
獲取引擎狀態監聽的標誌。
DLLEXBOOL GetOdvReportListening | ( | ) |
獲取 ODV 報告監聽的標誌。
DLLEXPCHAR GetPrinterAllConfig | ( | CObject * | ptrComm, |
COMM_TYP | commTyp, | ||
bool | usingDataPort ) |
獲取印表機的所有組態設定。
[in] | commPtr | : 介面指標 |
[in] | commTyp | : 介面種類 |
[in] | usingDataPort | : 使用資料埠傳輸, 預設是 false |
DLLEXPCHAR GetPrinterAllProperties | ( | CObject * | ptrComm, |
COMM_TYP | commTyp, | ||
bool | usingDataPort ) |
獲取印表機的所有屬性。
[in] | commPtr | : 介面指標 |
[in] | commTyp | : 介面種類 |
[in] | usingDataPort | : 使用資料埠傳輸, 預設是 false |
DLLEXPCHAR GetPrinterAllValues | ( | CObject * | ptrComm, |
COMM_TYP | commTyp, | ||
bool | usingDataPort ) |
獲取印表機的所有設置。
[in] | commPtr | : 介面指標 |
[in] | commTyp | : 介面種類 |
[in] | usingDataPort | : 使用資料埠傳輸, 預設是 false |
DLLEXPCHAR GetPrinterConfig | ( | CObject * | ptrComm, |
COMM_TYP | commTyp, | ||
bool | usingDataPort, | ||
int | CfgNumber ) |
獲取印表機的單一組態設定。
[in] | commPtr | : 介面指標 |
[in] | commTyp | : 介面種類 |
[in] | usingDataPort | : 使用資料埠傳輸, 預設是 false |
[in] | CfgNumber | : 組態設定索引值, 範圍是 0~8 |
獲取印表機功能的相關信息。
[out] | pPrtInfo | : 用來存儲印表機信息的結構體 |
[in] | InfoTyp | : 設置 RFID 或 ODV 信息的類型 |
DLLEXPCHAR GetPrinterProperties | ( | CObject * | ptrComm, |
COMM_TYP | commTyp, | ||
bool | usingDataPort, | ||
const char * | key ) |
獲取印表機的單一屬性。
[in] | commPtr | : 介面指標 |
[in] | commTyp | : 介面種類 |
[in] | usingDataPort | : 使用資料埠傳輸, 預設是 false |
[in] | key | 印表機設置的一個鍵值 |
DLLEXPCHAR GetPrinterPropertiesEx | ( | CObject * | ptrComm, |
COMM_TYP | commTyp, | ||
bool | usingDataPort, | ||
const char * | keys[], | ||
size_t | count ) |
獲取印表機的多個屬性。
[in] | commPtr | : 介面指標 |
[in] | commTyp | : 介面種類 |
[in] | usingDataPort | : 使用資料埠傳輸, 預設是 false |
[in] | keyProps | 印表機設置的多個鍵值 |
[in] | keyCount | 鍵值數量 |
DLLEXPCHAR GetPrinterValue | ( | CObject * | ptrComm, |
COMM_TYP | commTyp, | ||
bool | usingDataPort, | ||
const char * | key ) |
獲取印表機的單一設置。
[in] | commPtr | : 介面指標 |
[in] | commTyp | : 介面種類 |
[in] | usingDataPort | : 使用資料埠傳輸, 預設是 false |
[in] | key | 印表機設置的一個鍵值 |
DLLEXPCHAR GetPrinterValues | ( | CObject * | ptrComm, |
COMM_TYP | commTyp, | ||
bool | usingDataPort, | ||
const std::vector< std::string > & | keys ) |
獲取印表機的多個設置。
[in] | commPtr | : 介面指標 |
[in] | commTyp | : 介面種類 |
[in] | usingDataPort | : 使用資料埠傳輸, 預設是 false |
[in] | keys | 印表機設置的多個鍵值 |
DLLEXBOOL GetRfidReportListening | ( | ) |
獲取 RFID 報告監聽的標誌。
DLLEXVOID MessengerGet | ( | CObject * | ptrComm, |
COMM_TYP | commTyp, | ||
int | maxInputMsgCapacity, | ||
bool | usingDataPort ) |
建立一個頻道,用於發送/接收管理訊息,並指定最大容量。
[out] | ptrComm | : 介面指標 |
[in] | commTyp | : 介面種類 |
[in] | maxInputMsgCapacity | : 最大訊息輸入容量, 預設 MAX_INPUT_MSG_CAPACITY(20) |
[in] | usingDataPort | : 使用資料埠傳輸, 預設是 false |
DLLEXVOID MessengerReadNextMsg | ( | const char ** | strNextMsg | ) |
讀取已經從印表機非同步接收的下一則訊息。
[out] | strNextMsg | : 用來存儲下一個返回消息的緩衝區 |
DLLEXVOID MessengerRelease | ( | ) |
釋放訊息傳輸介面資源
DLLEXVOID MessengerSendMsg | ( | char * | strCommand, |
char * | strContent ) |
向印表機發送管理指令和資料/內容。
[in] | strCommand | : 管理指令字串 |
[in] | strContent | : 管理資料/內容字串 |
DLLEXVOID MessengerSendMsgAndWaitForResponse | ( | char * | strCommand, |
char * | strContent, | ||
int | maxWaitTimeSecs, | ||
const char ** | strResponse ) |
將管理命令和數據/內容發送到印表機,並等待 maxWaitTimeSecs 秒的回應。
[in] | strCommand | : 一個管理命令字符串 |
[in] | strContent | : 一個管理數據/內容字符串 |
[in] | maxWaitTimeSecs | : 最大等待時間 |
[out] | strResponse | : 用來存儲 JSON 字符串回應的緩衝區 |
DLLEXINT MessengerUnreadMsgCount | ( | ) |
DLLEXVOID OdvMonitorConnection | ( | char * | lpAddress | ) |
使用網路介面 (NET Interface) 連接印表機以啟用 ODV 監控功能。
[in] | lpAddress | : IP 位址 |
DLLEXVOID OdvMonitorDispose | ( | ) |
釋放 ODV 監控資源。
使用網路介面 (NET Interface) 連接印表機以啟用印表機監控功能。
[in] | lpAddress | : IP 位址 |
DLLEXVOID RfidMonitorConnection | ( | char * | lpAddress | ) |
使用網路介面 (NET Interface) 連接印表機以啟用 RFID 監控功能。
[in] | lpAddress | : IP 位址 |
DLLEXVOID RfidMonitorDispose | ( | ) |
釋放 RFID 監控資源。
DLLEXVOID SetAlertStatusCallback | ( | void | callbackconst std::vector< std::string > &alert | ) |
設置一個回傳數來獲取警報狀態。
[in] | callback | :a callback function |
設置印表機報告監聽警報狀態的標誌。
[in] | callback | :回調函數 |
DLLEXVOID SetAlertStatusListening | ( | bool | value | ) |
設置印表機報告監聽警報狀態的標誌。
[in] | value | : 用來設置印表機報告監聽的標誌 |
DLLEXVOID SetDisplayStatusCallback | ( | void | callbackconst std::vector< std::string > &newDisplayText | ) |
設置印表機報告監聽螢幕狀態的標誌。
[in] | callback | :回調函數 |
DLLEXVOID SetDisplayStatusListening | ( | bool | value | ) |
設置印表機報告監聽螢幕狀態的標誌。
[in] | value | : 用來設置印表機報告監聽的標誌 |
DLLEXVOID SetEngineStatusCallback | ( | void | callbackconst std::string &engineState | ) |
設置印表機報告監聽警報狀態的標誌。
[in] | callback | :回調函數 |
DLLEXVOID SetEngineStatusListening | ( | bool | value | ) |
設置印表機報告監聽引擎狀態的標誌。
[in] | value | : 用來設置印表機報告監聽的標誌 |
DLLEXVOID SetOdvReportCallback | ( | void | callbackconst OdvReport &report | ) |
設置一個回調函數來獲取 ODV 報告。
[in] | callback | :回調函數 |
DLLEXVOID SetOdvReportListening | ( | bool | value | ) |
設置 ODV 報告監聽的標誌。
[in] | value | : 用來設置 ODV 報告監聽的標誌 |
DLLEXBOOL SetPrinterConfig | ( | CObject * | ptrComm, |
COMM_TYP | commTyp, | ||
bool | usingDataPort, | ||
char * | pConfig ) |
設定印表機的單一組態設定。
[in] | commPtr | : 介面指標 |
[in] | commTyp | : 介面種類 |
[in] | usingDataPort | : 使用資料埠傳輸, 預設是 false |
[in] | pConfig | : 組態設定 |
DLLEXBOOL SetPrinterValue | ( | CObject * | ptrComm, |
COMM_TYP | commTyp, | ||
bool | usingDataPort, | ||
const char * | key, | ||
const char * | value ) |
設定印表機的單一設置。
[in] | commPtr | : 介面指標 |
[in] | commTyp | : 介面種類 |
[in] | usingDataPort | : 使用資料埠傳輸, 預設是 false |
[in] | key | 印表機設置的一個鍵值 |
[in] | value | 一個印表機設置值 |
DLLEXBOOL SetPrinterValues | ( | CObject * | ptrComm, |
COMM_TYP | commTyp, | ||
bool | usingDataPort, | ||
std::map< std::string, std::string > * | keysToSet ) |
設定印表機的多個設置。
[in] | commPtr | : 介面指標 |
[in] | commTyp | : 介面種類 |
[in] | usingDataPort | : 使用資料埠傳輸, 預設是 false |
[in] | keysToSet | 印表機設置的多個鍵值 |
DLLEXVOID SetRfidReportCallback | ( | void | callbackconst RfidReport &report | ) |
設置一個回調函數來獲取 RFID 報告。
[in] | callback | :回調函數 |
DLLEXVOID SetRfidReportListening | ( | bool | value | ) |
|
static |
JsonMessenger gJsonMessenger |
OdvMonitor gOdvMonitor |
PrinterMonitor gPrinterMonitor |
PrinterMonitor gPrinterMonitor_Odv |
PrinterMonitor gPrinterMonitor_Rfid |
RfidMonitor gRfidMonitor |
RfidReport gRfidReport |
CJsonSDKApp theApp |