5 #include "pv_recorder.h"
10 napi_status status = napi_get_cb_info(env, info, &argc,
args,
NULL,
NULL);
11 assert(status == napi_ok);
14 status = napi_get_value_int32(env,
args[0], &device_index);
15 assert(status == napi_ok);
19 assert(status == napi_ok);
21 int32_t buffer_size_msec;
22 status = napi_get_value_int32(env,
args[2], &buffer_size_msec);
23 assert(status == napi_ok);
27 assert(status == napi_ok);
36 uint64_t object_id_and_status = (((uint64_t)(uintptr_t) handle) * 10) + pv_recorder_status;
37 status = napi_create_bigint_uint64(env, (uint64_t) object_id_and_status, &result);
38 assert(status == napi_ok);
46 napi_status status = napi_get_cb_info(env, info, &argc,
args,
NULL,
NULL);
47 assert(status == napi_ok);
51 status = napi_get_value_bigint_uint64(env,
args[0], &object_id, &lossless);
52 assert(status == napi_ok);
63 napi_status status = napi_get_cb_info(env, info, &argc,
args,
NULL,
NULL);
64 assert(status == napi_ok);
68 status = napi_get_value_bigint_uint64(env,
args[0], &object_id, &lossless);
69 assert(status == napi_ok);
75 status = napi_create_int32(env, pv_recorder_status, &result);
76 assert(status == napi_ok);
84 napi_status status = napi_get_cb_info(env, info, &argc,
args,
NULL,
NULL);
85 assert(status == napi_ok);
89 status = napi_get_value_bigint_uint64(env,
args[0], &object_id, &lossless);
90 assert(status == napi_ok);
96 status = napi_create_int32(env, pv_recorder_status, &result);
97 assert(status == napi_ok);
105 napi_status status = napi_get_cb_info(env, info, &argc,
args,
NULL,
NULL);
106 assert(status == napi_ok);
110 status = napi_get_value_bigint_uint64(env,
args[0], &object_id, &lossless);
111 assert(status == napi_ok);
114 napi_typedarray_type arr_type;
117 napi_value arr_value;
119 status = napi_get_typedarray_info(env,
args[1], &arr_type, &length, &data, &arr_value, &offset);
120 assert(status == napi_ok);
121 assert(arr_type == napi_int16_array);
128 status = napi_create_int32(env, pv_recorder_status, &result);
129 assert(status == napi_ok);
137 napi_status status = napi_get_cb_info(env, info, &argc,
args,
NULL,
NULL);
138 assert(status == napi_ok);
142 status = napi_get_value_bigint_uint64(env,
args[0], &object_id, &lossless);
143 assert(status == napi_ok);
148 assert(status == napi_ok);
155 napi_status status = napi_get_cb_info(env, info, &argc,
NULL,
NULL,
NULL);
156 assert(status == napi_ok);
159 char **devices =
NULL;
161 assert(devices !=
NULL);
168 status = napi_create_array_with_length(env,
count, &result);
169 assert(status == napi_ok);
171 for (int32_t i = 0; i <
count; i++) {
172 napi_value device_name;
173 status = napi_create_string_utf8(env, devices[i], NAPI_AUTO_LENGTH, &device_name);
174 assert(status == napi_ok);
176 status = napi_set_element(env, result, i, device_name);
177 assert(status == napi_ok);
189 napi_status status = napi_create_string_utf8(env,
pv_recorder_version(), NAPI_AUTO_LENGTH, &result);
190 assert(status == napi_ok);
195 #define DECLARE_NAPI_METHOD(name, func) (napi_property_descriptor){ name, 0, func, 0, 0, 0, napi_default, 0 }
197 napi_value
Init(napi_env env, napi_value exports) {
199 napi_status status = napi_define_properties(env, exports, 1, &desc);
200 assert(status == napi_ok);
203 status = napi_define_properties(env, exports, 1, &desc);
204 assert(status == napi_ok);
207 status = napi_define_properties(env, exports, 1, &desc);
208 assert(status == napi_ok);
211 status = napi_define_properties(env, exports, 1, &desc);
212 assert(status == napi_ok);
215 status = napi_define_properties(env, exports, 1, &desc);
216 assert(status == napi_ok);
219 status = napi_define_properties(env, exports, 1, &desc);
220 assert(status == napi_ok);
223 status = napi_define_properties(env, exports, 1, &desc);
224 assert(status == napi_ok);
227 status = napi_define_properties(env, exports, 1, &desc);
228 assert(status == napi_ok);
233 NAPI_MODULE(NODE_GYB_MODULE_NAME,
Init)