1/* 2 * Copyright (c) 2023 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 "native_engine/native_engine.h" 17 18#include "napi/native_api.h" 19#include "napi/native_node_api.h" 20 21extern const char _binary_avpicker_abc_start[]; 22extern const char _binary_avpicker_abc_end[]; 23 24extern "C" __attribute__((visibility("default"))) 25void NAPI_multimedia_avCastPicker_GetABCCode(const char **buf, int *buflen) 26{ 27 if (buf != nullptr) { 28 *buf = _binary_avpicker_abc_start; 29 } 30 if (buflen != nullptr) { 31 *buflen = _binary_avpicker_abc_end - _binary_avpicker_abc_start; 32 } 33} 34 35/** 36 * Module define 37*/ 38static napi_module avCastPickerModule = { 39 .nm_version = 1, 40 .nm_flags = 0, 41 .nm_filename = nullptr, 42 .nm_modname = "multimedia.avCastPicker", 43 .nm_priv = ((void*)0), 44 .reserved = {0}, 45}; 46 47/** 48 * Module register function 49*/ 50extern "C" __attribute__((constructor)) void AVPickerRegisterModule(void) 51{ 52 napi_module_register(&avCastPickerModule); 53} 54