// scanner const attributes definitions: // // Contains: vid, pid, serial-number, ip, mac, firmware-ver, roll-life, name, family // // Date: 2023-12-16 #include class scanner_const_opts : public sane_opt_provider { std::string root_; std::string get_device_content(const char* path); std::string get_ip(void); std::string get_mac(void); void init(void); public: scanner_const_opts(const char* dev_path = "/opt/cfg/usb_gadget/g1"); protected: ~scanner_const_opts(); public: // return malloc(), real data size stored in parameter 'size'. invoker should free() the returned value virtual char* get_value(const char* name, void* value, size_t* size, int* err = nullptr) override; }; // { // "dev-vid": { // "cat": "base", // "group": "关于", // "title": "USB-VID", // "desc": "设备制造商在USB组织的ID", // "type": "string", // "fix-id": 34898, // "ui-pos": 10, // "auth": 0, // "readonly": true, // "size": 16, // "auto": false, // "cur": "3072", // "default": "3072" // }, // "dev-pid": { // "cat": "base", // "group": "关于", // "title": "USB-PID", // "desc": "设备在USB组织中的产品ID", // "type": "string", // "fix-id": 34899, // "ui-pos": 11, // "auth": 0, // "readonly": true, // "size": 16, // "auto": false, // "cur": "0306", // "default": "0306" // }, // "dev-name": { // "cat": "base", // "group": "关于", // "title": "设备名称", // "desc": "设备名称", // "type": "string", // "fix-id": 34900, // "ui-pos": 12, // "auth": 0, // "readonly": true, // "size": 96, // "auto": false, // "cur": "300NewTx", // "default": "300NewTx" // }, // "dev-model": { // "cat": "base", // "group": "关于", // "title": "产品系列", // "desc": "设备所属产品系列名称", // "type": "string", // "fix-id": 34901, // "ui-pos": 13, // "auth": 0, // "readonly": true, // "size": 96, // "auto": false, // "cur": "G300", // "default": "G300" // }, // "dev-sn": { // "cat": "base", // "group": "关于", // "title": "序列号", // "desc": "设备序列号", // "type": "string", // "fix-id": 34902, // "ui-pos": 14, // "auth": 0, // "readonly": true, // "size": 32, // "auto": false, // "ownread": true, // "cur": "GB20231201", // "default": "GB20231201" // }, // "fmw-ver": { // "cat": "base", // "group": "关于", // "title": "固件版本", // "desc": "设备固件版本号", // "type": "string", // "fix-id": 34903, // "ui-pos": 15, // "auth": 0, // "readonly": true, // "size": 32, // "auto": false, // "ownread": true, // "cur": "G2393B0500", // "default": "G2393B0500" // }, // "roller-life": { // "cat": "base", // "group": "关于", // "title": "滚轴寿命", // "desc": "该设备滚轴过纸的最大张数", // "type": "int", // "fix-id": 34907, // "ui-pos": 16, // "auth": 0, // "readonly": true, // "size": 4, // "auto": false, // "cur": 450000, // "default": 450000 // }, // "ip-addr": { // "cat": "base", // "group": "关于", // "title": "IP", // "desc": "设备联网时所分配的IP地址", // "type": "string", // "fix-id": 34904, // "ui-pos": 20, // "auth": 0, // "readonly": true, // "size": 96, // "auto": false, // "ownread": true, // "cur": "0", // "default": "0" // }, // "mac-addr": { // "cat": "base", // "group": "关于", // "title": "MAC", // "desc": "设备网卡地址", // "type": "string", // "fix-id": 34905, // "ui-pos": 21, // "auth": 0, // "readonly": true, // "size": 96, // "auto": false, // "ownread": true, // "cur": "0", // "default": "0" // } // }