• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2024 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 #include "napi/native_api.h"
17 #include <BasicServicesKit/ohscan.h>
18 
19 #define SCANNER_ID "12"
20 
ScannerDiscoveryCallback(Scan_ScannerDevice ** devices,int32_t length)21 static void ScannerDiscoveryCallback(Scan_ScannerDevice **devices, int32_t length)
22 {
23 }
24 
OHScanInit(napi_env env,napi_callback_info info)25 static napi_value OHScanInit(napi_env env, napi_callback_info info)
26 {
27     napi_value result = nullptr;
28     int32_t errorCode = OH_Scan_Init();
29     errorCode = OH_Scan_Exit();
30     napi_create_int32(env, static_cast<int32_t>(errorCode), &result);
31     return result;
32 }
33 
OHScanStartScannerDiscovery(napi_env env,napi_callback_info info)34 static napi_value OHScanStartScannerDiscovery(napi_env env, napi_callback_info info)
35 {
36     napi_value result = nullptr;
37     int32_t errorCode = OH_Scan_Init();
38     OH_Scan_StartScannerDiscovery(ScannerDiscoveryCallback);
39     errorCode = OH_Scan_Exit();
40     napi_create_int32(env, static_cast<int32_t>(errorCode), &result);
41     return result;
42 }
43 
OHScanOpenScanner(napi_env env,napi_callback_info info)44 static napi_value OHScanOpenScanner(napi_env env, napi_callback_info info)
45 {
46     napi_value result = nullptr;
47     int32_t errorCode = OH_Scan_Init();
48     OH_Scan_OpenScanner(SCANNER_ID);
49     errorCode = OH_Scan_Exit();
50     napi_create_int32(env, static_cast<int32_t>(errorCode), &result);
51     return result;
52 }
53 
OHScanCloseScanner(napi_env env,napi_callback_info info)54 static napi_value OHScanCloseScanner(napi_env env, napi_callback_info info)
55 {
56     napi_value result = nullptr;
57     int32_t errorCode = OH_Scan_Init();
58     OH_Scan_CloseScanner(SCANNER_ID);
59     errorCode = OH_Scan_Exit();
60     napi_create_int32(env, static_cast<int32_t>(errorCode), &result);
61     return result;
62 }
63 
OHScanGetScannerParameter(napi_env env,napi_callback_info info)64 static napi_value OHScanGetScannerParameter(napi_env env, napi_callback_info info)
65 {
66     napi_value result = nullptr;
67     int32_t errorCode = OH_Scan_Init();
68     int32_t paraErrorCode;
69     OH_Scan_GetScannerParameter(SCANNER_ID, &paraErrorCode);
70     errorCode = OH_Scan_Exit();
71     napi_create_int32(env, static_cast<int32_t>(errorCode), &result);
72     return result;
73 }
74 
OHScanSetScannerParameter(napi_env env,napi_callback_info info)75 static napi_value OHScanSetScannerParameter(napi_env env, napi_callback_info info)
76 {
77     napi_value result = nullptr;
78     int32_t errorCode = OH_Scan_Init();
79     int32_t paraOption = 0;
80     OH_Scan_SetScannerParameter(SCANNER_ID, paraOption, SCANNER_ID);
81     errorCode = OH_Scan_Exit();
82     napi_create_int32(env, static_cast<int32_t>(errorCode), &result);
83     return result;
84 }
85 
OHScanStartScan(napi_env env,napi_callback_info info)86 static napi_value OHScanStartScan(napi_env env, napi_callback_info info)
87 {
88     napi_value result = nullptr;
89     int32_t errorCode = OH_Scan_Init();
90     OH_Scan_StartScan(SCANNER_ID, false);
91     errorCode = OH_Scan_Exit();
92     napi_create_int32(env, static_cast<int32_t>(errorCode), &result);
93     return result;
94 }
95 
OHScanCancelScan(napi_env env,napi_callback_info info)96 static napi_value OHScanCancelScan(napi_env env, napi_callback_info info)
97 {
98     napi_value result = nullptr;
99     int32_t errorCode = OH_Scan_Init();
100     OH_Scan_CancelScan(SCANNER_ID);
101     errorCode = OH_Scan_Exit();
102     napi_create_int32(env, static_cast<int32_t>(errorCode), &result);
103     return result;
104 }
105 
OHScanGetPictureScanProgress(napi_env env,napi_callback_info info)106 static napi_value OHScanGetPictureScanProgress(napi_env env, napi_callback_info info)
107 {
108     napi_value result = nullptr;
109     int32_t errorCode = OH_Scan_Init();
110     Scan_PictureScanProgress* prog = new Scan_PictureScanProgress;
111     OH_Scan_GetPictureScanProgress(SCANNER_ID, prog);
112     errorCode = OH_Scan_Exit();
113     napi_create_int32(env, static_cast<int32_t>(errorCode), &result);
114     return result;
115 }
116 
OHScanExit(napi_env env,napi_callback_info info)117 static napi_value OHScanExit(napi_env env, napi_callback_info info)
118 {
119     napi_value result = nullptr;
120     int32_t errorCode = OH_Scan_Init();
121     errorCode = OH_Scan_Exit();
122     napi_create_int32(env, static_cast<int32_t>(errorCode), &result);
123     return result;
124 }