/ohos5.0/foundation/arkui/ace_engine/frameworks/bridge/declarative_frontend/engine/ |
H A D | bindings_implementation.inl | 27 ImplDetail<C>::Declare(name); 107 ImplDetail<C>::ExoticGetter(callback); 113 ImplDetail<C>::ExoticSetter(callback); 132 ImplDetail<C>::Bind(bindTarget, ctor); 136 void JSClassImpl<C, ImplDetail>::Bind( 137 …rget bindTarget, JSFunctionCallback ctor, JSDestructorCallback<C> dtor, JSGCMarkCallback<C> gcMark) 144 void JSClassImpl<C, ImplDetail>::Bind( 145 BindingTarget bindTarget, JSDestructorCallback<C> dtor, JSGCMarkCallback<C> gcMark) 152 void JSClassImpl<C, ImplDetail>::Inherit() 155 ImplDetail<C>::template Inherit<Base>(); [all …]
|
H A D | bindings.inl | 31 ImplDetail<C>::Declare(name); 36 void JSClassImpl<C, ImplDetail>::Method(const char* name, R (C::*func)(Args...), MethodOptions opti… 53 void JSClassImpl<C, ImplDetail>::StaticMethod(const char* name, R (C::*func)(Args...), MethodOption… 79 void JSClassImpl<C, ImplDetail>::CustomMethod(const char* name, typename ImplDetail<C>::FunctionCal… 120 void JSClassImpl<C, ImplDetail>::StaticMethod(const char* name, typename ImplDetail<C>::FunctionCal… 133 void JSClassImpl<C, ImplDetail>::Bind( 134 typename ImplDetail<C>::BindingTarget bindTarget, typename ImplDetail<C>::FunctionCallback ctor) 136 ImplDetail<C>::Bind(bindTarget, ctor); 141 void JSClassImpl<C, ImplDetail>::Bind(typename ImplDetail<C>::BindingTarget bindTarget) 157 typename ImplDetail<C>::BindingTarget bindTarget, ImplDetail<C>::JSFunctionCallback ctor, [all …]
|
/ohos5.0/docs/zh-cn/application-dev/reference/native-lib/ |
H A D | cpp.md | 2 # 标准C++库 4 OpenHarmony使用llvm开源项目的C++标准库[libc++](https://libcxx.llvm.org/)作为C++运行时库。 14 ## C++语言支持能力 16 C++11、C++14标准已完全支持,C++17和C++20标准正在完善。具体语言特性支持标准可以参考[https://libcxx.llvm.org/](https://libcxx.llvm.o… 19 ## 如何在CMake中选择C++ 21 …cmake/ohos.toolchain.cmake文件中,定义了OHOS_STL变量,可以通过设置"c++_shared"或者"c++_static"来控制应用工程中原生库链接C++运行库的方式。 25 ## C++运行时兼容性 27 …库都在使用C++标准库,两部分升级节奏不一样,依赖C++运行时版本也可能不一样。系统库依赖的C++标准库随镜像版本升级,而应用原生库依赖的C++标准库随编译使用的SDK版本升级,两部分依赖的C++… 32 两个库使用的C++命名空间不一样,libc++_shared.so使用__n1作为C++符号的命名空间,libc++.so使用__h作为C++符号的命名空间。 34 注意:两边使用的C++标准库不能进行混用,Native API接口当前只能是C接口,可以通过这个接口隔离两边的C++运行环境。 [all …]
|
/ohos5.0/docs/zh-cn/contribute/ |
H A D | OpenHarmony-compile-rule.md | 32 | C&C++ | LANG | 语言选项 | C&C++ | WARN | 警告选项 | 33 | C&C++ | SEC | 安全选项 | C&C++ | CDG | 代码生成选项 | 34 | C&C++ | OPT | 优化选项 | C&C++ | MD | 架构选项 | 35 | C&C++ | OVA | 总体选项 | C&C++ | LNK | 链接选项 | 36 | C&C++ | DBG | 调试选项 | C&C++ | PRE | 编译宏 | 52 ## C/C++语言编译选项 56 ##### G.C&C++.LANG.01 显式设置编译的语言标准 70 ##### G.C&C++.LANG.02 采用较新的语言标准 82 ##### G.C&C++.LANG.04 对C++语言,禁止使用"-fpermissive"选项 702 ##### G.C&C++.SEC.01 打开栈保护选项 [all …]
|
/ohos5.0/commonlibrary/rust/ylong_runtime/ylong_runtime/src/sync/mpsc/ |
H A D | mod.rs | 36 chan: C, 40 impl<C: Container> Channel<C> { 41 fn new(chan: C) -> Channel<C> { in new() argument 49 pub(crate) fn channel<C: Container>(chan: C) -> (Tx<C>, Rx<C>) { in channel() argument 58 impl<C: Container> Clone for Tx<C> { 67 impl<C: Container> Tx<C> { 68 fn new(channel: Arc<Channel<C>>) -> Tx<C> { in new() argument 83 impl<C: Container> Deref for Tx<C> { 95 impl<C: Container> Rx<C> { 96 fn new(channel: Arc<Channel<C>>) -> Rx<C> { in new() argument [all …]
|
/ohos5.0/docs/zh-cn/application-dev/media/camera/ |
H A D | Readme-CN.md | 36 - 相机开发指导(C/C++) 37 - [相机管理(C/C++)](native-camera-device-management.md) 38 - [设备输入(C/C++)](native-camera-device-input.md) 40 - [预览(C/C++)](native-camera-preview.md) 42 - [拍照(C/C++)](native-camera-shooting.md) 44 - [录像(C/C++)](native-camera-recording.md) 45 - [元数据(C/C++)](native-camera-metadata.md) 46 - [手电筒使用(C/C++)](native-camera-torch-use.md) 47 - 相机最佳实践(C/C++) 48 - [拍照实现方案(C/C++)](native-camera-shooting-case.md) [all …]
|
H A D | camera-preparation.md | 24 当前相机提供了ArkTS和C++两种开发语言的开发指导,如下表所示。 26 | 开发流程 | ArkTS开发指导 | C++开发指导 | 28 | 设备输入 | [设备输入(ArkTS)](camera-device-input.md) | [设备输入(C/C++)](native-camera-device-input.md) | 29 | 会话管理 | [会话管理(ArkTS)](camera-session-management.md) | [会话管理(C/C++)](native-camera-session-manageme… 30 | 预览 | [预览(ArkTS)](camera-preview.md) | [预览(C/C++)](native-camera-preview.md) | 31 | 预览流二次处理 | - | [预览流二次处理(C/C++)](native-camera-preview-imageReceiver.md) | 32 | 拍照 | [拍照(ArkTS)](camera-shooting.md) | [拍照(C/C++)](native-camera-shooting.md) | 35 | 录像 | [录像(ArkTS)](camera-recording.md) | [录像(C/C++)](native-camera-recording.md) | 36 | 元数据 | [元数据(ArkTS)](camera-metadata.md) | [元数据(C/C++)](native-camera-metadata.md) |
|
/ohos5.0/docs/zh-cn/application-dev/security/UniversalKeystoreKit/ |
H A D | Readme-CN.md | 10 - [生成密钥(C/C++)](huks-key-generation-ndk.md) 17 - [加密导入密钥(C/C++)](huks-import-wrapped-key-ndk.md) 24 - [加解密(C/C++)](huks-encryption-decryption-ndk.md) 34 - [密钥协商(C/C++)](huks-key-agreement-ndk.md) 39 - [密钥派生(C/C++)](huks-key-derivation-ndk.md) 49 - [HMAC(C/C++)](huks-hmac-ndk.md) 52 - [密钥删除(C/C++)](huks-delete-key-ndk.md) 60 - [非匿名密钥证明(C/C++)](huks-key-attestation-ndk.md) 65 - [查询密钥是否存在(C/C++)](huks-check-key-ndk.md) 71 - [密钥导出(C/C++)](huks-export-key-ndk.md) [all …]
|
/ohos5.0/docs/zh-cn/release-notes/changelogs/OpenHarmony_4.0.9.2/ |
H A D | changelogs-multimedia.md | 15 ```C 31 ```C 51 ```C 58 ```C 77 ```C 92 ```C 98 ```C 107 ```C 113 ```C 142 ```C [all …]
|
/ohos5.0/docs/zh-cn/application-dev/security/CryptoArchitectureKit/ |
H A D | Readme-CN.md | 11 - [随机生成对称密钥(C/C++)](crypto-generate-sym-key-randomly-ndk.md) 13 - [指定二进制数据转换对称密钥(C/C++)](crypto-convert-binary-data-to-sym-key-ndk.md) 15 - [随机生成非对称密钥对(C/C++)](crypto-generate-asym-key-pair-randomly-ndk.md) 32 - [使用AES对称密钥(GCM模式)加解密(C/C++)](crypto-aes-sym-encrypt-decrypt-gcm-ndk.md) 34 - [使用AES对称密钥(CCM模式)加解密(C/C++)](crypto-aes-sym-encrypt-decrypt-ccm-ndk.md) 36 - [使用AES对称密钥(CBC模式)加解密(C/C++)](crypto-aes-sym-encrypt-decrypt-cbc-ndk.md) 38 - [使用AES对称密钥(ECB模式)加解密(C/C++)](crypto-aes-sym-encrypt-decrypt-ecb-ndk.md) 66 - [使用RSA密钥对验签(PSS模式)(C/C++)](crypto-rsa-sign-sig-verify-pss-ndk.md) 68 - [使用ECDSA密钥对验签(C/C++)](crypto-ecdsa-sign-sig-verify-ndk.md) 70 - [使用SM2密钥对验签(C/C++)](crypto-sm2-sign-sig-verify-pkcs1-ndk.md) [all …]
|
/ohos5.0/docs/en/application-dev/media/camera/ |
H A D | Readme-EN.md | 36 - Camera Development (C/C++) 38 - [Device Input Management (C/C++)](native-camera-device-input.md) 40 - [Preview (C/C++)](native-camera-preview.md) 42 - [Photo Capture (C/C++)](native-camera-shooting.md) 43 - [Deferred Photo Delivery (C/C++)](native-camera-deferred-capture.md) 44 - [Video Recording (C/C++)](native-camera-recording.md) 45 - [Camera Metadata (C/C++)](native-camera-metadata.md) 46 - [Using the Flashlight (C/C++)](native-camera-torch-use.md) 47 - Camera Best Practices (C/C++) 48 - [Photo Capture Sample (C/C++)](native-camera-shooting-case.md) [all …]
|
/ohos5.0/docs/zh-cn/application-dev/ui/ |
H A D | arkts-gesture-events-multi-level-gesture.md | 27 组件B和组件C作为组件A的子组件,当触摸到组件B或者组件C时,组件A也会被触摸到。onTouch事件允许多个组件同时触发, 28 因此,当触摸组件B时,会触发组件A和组件B的onTouch回调,不会触发组件C的onTouch回调。 29 当触摸组件C时,会触发组件A和组件C的onTouch回调,不触发组件B的回调。 40 …B和组件C作为Stack A的子组件,组件C覆盖在组件B上。当触摸到组件B或者组件C时,Stack A也会被触摸到。onTouch事件允许多个组件同时触发,因此,当触摸组件B和组件C的重叠区域时,… 130 当组件C未设置hitTestBehavior时,点击组件D区域,组件A、组件C和组件D的onTouch事件会触发,组件D的点击手势会触发。 132 当组件C设置了hitTestBehavior为HitTestMode.Block时,点击组件D区域,组件A和组件C的onTouch事件会触发,组件D的onTouch事件未触发。同时,由于组件D的点击… 150 当组件C未设置hitTestBehavior时,点击组件B和组件C的重叠区域时,Stack A和组件C的onTouch事件会触发,组件C的点击事件会触发,组件B的onTouch事件和点击手势均不触发。 152 而当组件C设置hitTestBehavior为HitTestMode.Transparent时,点击组件B和组件C的重叠区域,组件A和组件C不受到影响与之前一致,组件A和组件C的onTouch事件会…
|
/ohos5.0/docs/zh-cn/application-dev/napi/ |
H A D | ndk-development-overview.md | 3 …ative API、相应编译脚本和编译工具链的集合,方便开发者使用C或C++语言实现应用的关键功能。NDK只覆盖了OpenHarmony一些基础的底层能力,如C运行时基础库libc、图形库、窗口系… 15 - 需要复用已有C或C++库的场景。 21 - 纯C或C++的应用。 35 …曾用名NAPI,是OpenHarmony中提供ArkTS/JS与C/C++跨语言调用的接口,是NDK接口中的一部分。该接口是在Node.js提供的Node-API基础上扩展而来,但与Node.js… 37 - **C API** 44 - **Linux C语言编程知识** 45 内核、libc基础库基于POSIX等标准扩展而来,掌握基本的Linux C编程知识能够更好的帮助理解OpenHarmony NDK开发。 63 CMake编译时需要读取该文件中的默认值,比如编译器架构、C++库链接方式等,因此在编译时会通过CMAKE_TOOLCHAIN_FILE指出该文件的路径,便于CMake在编译时定位到该文件。 86 | 标准C库 | 以musl为基础提供的标准C库接口。 | 87 | 标准C++库 | C++运行时库libc++_shared。 | [all …]
|
H A D | c-cpp-overview.md | 1 # C/C++标准库机制概述 3 …提供业界标准库[libc标准库](../reference/native-lib/musl.md)、[标准C++库](../reference/native-lib/cpp.md),本文用于介绍C… 5 ## 1. C++兼容性 7 …C++标准库(参考[libc++版本](../reference/native-lib/cpp.md#libc版本)),系统库依赖的C++标准库随镜像版本升级,而应用Native库依赖的C++标准… 12 两个库使用的C++命名空间不一样,libc++.so使用__h作为C++符号的命名空间,libc++_shared.so使用__n1作为C++符号的命名空间。 16 > 系统和应用使用的C++标准库不能进行混用,Native API接口当前只能是C接口,可以通过这个接口隔离两边的C++运行环境。因此在使用共享库HAR包构建应用时,如果HAR包含的libc++_s… 18 **已知C++兼容性问题:** 25 动态库加载命名空间(namespace,下面统称为ns)是动态链接器设计的一个概念(区别于C++语言中的命名空间),其设计的主要目的是为了在进程中做native库资源访问的管控,以达到安全隔离的目的… 68 自API12起,newlocale及setlocale接口支持将locale设置C、C.UTF-8、en_US、en_US.UTF-8、zh_CN及zh_CN.UTF-8。新增在zh_CN及zh_C…
|
/ohos5.0/docs/zh-cn/application-dev/dfx/ |
H A D | Readme-CN.md | 6 - [使用HiLog打印日志(C/C++)](hilog-guidelines-ndk.md) 12 - [订阅应用事件(C/C++)](hiappevent-watcher-app-events-ndk.md) 17 - [订阅崩溃事件(C/C++)](hiappevent-watcher-crash-events-ndk.md) 21 - [订阅卡死事件(C/C++)](hiappevent-watcher-freeze-events-ndk.md) 25 - [订阅资源泄漏事件(C/C++)](hiappevent-watcher-resourceleak-events-ndk.md) 29 - [订阅踩内存事件(C/C++)](hiappevent-watcher-address-sanitizer-events-ndk.md) 33 - [订阅主线程超时事件(C/C++)](hiappevent-watcher-mainthreadjank-events-ndk.md) 39 - [使用HiTraceMeter跟踪性能(C/C++)](hitracemeter-guidelines-ndk.md) 43 - [使用HiTraceChain打点(C/C++)](hitracechain-guidelines-ndk.md) 48 - [使用HiDebug获取调试信息(C/C++)](hidebug-guidelines-ndk.md) [all …]
|
/ohos5.0/docs/zh-cn/application-dev/media/media/ |
H A D | media-kit-quick-overview.md | 3 当前 Media Kit 提供了 ArkTS 和 C/C++ 两种开发接口,实现了音视频播放、录制、元数据、转码等能力。Media Kit 的 API 文档和开发指导如下表所示。 5 … | ArkTS API 文档 | C/C++ 开发文档 | C/C… 7 …is-media.md#avplayer9) | [使用AVPlayer接口播放音频(C/C++)](using-ndk-avplayer-for-playback.md) | [AVPl… 8 …-media.md#avplayer9) | [使用AVPlayer接口播放视频(C/C++)](using-ndk-avplayer-for-video-playback.md) | [A… 14 …turerecorder12) | [使用AVScreenCapture接口录屏写文件(C/C++)](using-avscreencapture-for-file.md) | [AVScreen… 18 … | - | [使用AVScreenCapture接口录屏取码流(C/C++)](using-avscreencapture-for-buffer.md) | [AVScree…
|
/ohos5.0/foundation/ai/ai_engine/services/common/utils/ |
H A D | inf_cast_impl.h | 23 template<class I, class C> 33 C *p = nullptr; in Create() 34 AIE_NEW(p, C); in Create() 47 C *p = nullptr; in Create() 48 AIE_NEW(p, C(type)); in Create() 62 C *p = nullptr; in Create() 63 AIE_NEW(p, C(t)); in Create() 78 C *p = nullptr; in Create() 95 C *p = nullptr; in Create() 106 C *pc = reinterpret_cast<C*>(pi); in Destroy() [all …]
|
/ohos5.0/docs/zh-cn/application-dev/reference/apis-arkui/ |
H A D | arkui_native_interface_accessibility.md | 109 ```C 254 ```C 279 ```C 304 ```C 331 ```C 356 ```C 381 ```C 399 ```C 425 ```C 451 ```C [all …]
|
/ohos5.0/docs/zh-cn/release-notes/changelogs/OpenHarmony_4.0.10.2/ |
H A D | changelogs-multimedia.md | 3 ## cl.multimedia.1 音频C接口播放焦点事件回调接口声明变更 9 对于已发布的C接口,可能影响三方应用的兼容性。 15 ```C 25 ```C 39 ```C 46 ```C 57 对于已发布的C接口,可能影响三方应用的兼容性。 63 ```C 73 ```C 87 ```C [all …]
|
/ohos5.0/docs/zh-cn/application-dev/security/AssetStoreKit/ |
H A D | asset-scenario1.md | 23 …-js-query.md) / [查询关键资产(C/C++)](asset-native-query.md),代码示例参考[查询单条关键资产属性(ArkTS)](asset-js-query.md… 25 * 新增关键资产,开发步骤参考[新增关键资产(ArkTS)](asset-js-add.md) / [新增关键资产(C/C++)](asset-native-add.md)。 27 * 删除关键资产,开发步骤参考[删除关键资产(ArkTS)](asset-js-remove.md) / [删除关键资产(C/C++)](asset-native-remove.md)。 28 * 更新关键资产,开发步骤参考[更新关键资产(ArkTS)](asset-js-update.md) / [更新关键资产(C/C++)](asset-native-update.md)。 29 …-js-query.md) / [查询关键资产(C/C++)](asset-native-query.md),代码示例参考[查询单条关键资产明文(ArkTS)](asset-js-query.md…
|
/ohos5.0/docs/en/application-dev/security/UniversalKeystoreKit/ |
H A D | Readme-EN.md | 10 - [Generating a Key (C/C++)](huks-key-generation-ndk.md) 17 - [Importing a Key in Ciphertext (C/C++)](huks-import-wrapped-key-ndk.md) 24 - [Encryption and Decryption (C/C++)](huks-encryption-decryption-ndk.md) 34 - [Key Agreement (C/C++)](huks-key-agreement-ndk.md) 39 - [Key Derivation (C/C++)](huks-key-derivation-ndk.md) 49 - [HMAC(C/C++)](huks-hmac-ndk.md) 52 - [Deleting a Key (C/C++)](huks-delete-key-ndk.md) 60 - [Non-anonymous Key attestation (C/C++)](huks-key-attestation-ndk.md) 65 - [Checking a Key (C/C++)](huks-check-key-ndk.md) 71 - [Exporting a Key (C/C++)](huks-export-key-ndk.md) [all …]
|
/ohos5.0/foundation/arkui/ace_engine/frameworks/bridge/declarative_frontend/state_mgmt/src/lib/partial_update/ |
H A D | pu_synced_property_one_way.ts | 65 class SynchedPropertyOneWayPU<C> extends ObservedPropertyAbstractPU<C> 66 implements PeerChangeEventReceiverPU<C>, ObservedObjectEventsPUReceiver<C> { 77 constructor(source: ObservedPropertyAbstract<C> | C, 178 public getUnmonitored(): C { 184 public get(): C { 200 public set(newValue: C): void { 321 private copyObject(value: C, propName: string): C { 336 private shallowCopyObject(value: C, propName: string): C { 338 let copy: C; 378 private deepCopyObject(obj: C, variable?: string): C { [all …]
|
/ohos5.0/foundation/arkui/ace_engine/frameworks/bridge/declarative_frontend/engine/jsi/ |
H A D | jsi_bindings.inl | 26 template<typename C> 29 template<typename C> 32 template<typename C> 35 template<typename C> 38 template<typename C> 41 template<typename C> 44 template<typename C> 47 template<typename C> 48 thread_local JSGCMarkCallback<C> JsiClass<C>::jsGcMark_ = nullptr; 50 template<typename C> [all …]
|
/ohos5.0/commonlibrary/rust/ylong_runtime/ylong_runtime/src/iter/ |
H A D | core.rs | 30 pub(crate) async fn core<P, C>(par_iter: P, consumer: C) -> Result<C::Output, ScheduleError> in core() 33 C: Consumer<P> + Send + Sync, in core() 72 async fn recur<P, C>( in recur() 76 consumer: &C, in recur() argument 82 C: Consumer<P> + Send + Sync, in recur() 124 unsafe fn spawn_task<P, C>( in spawn_task() 128 consumer: &C, in spawn_task() argument 150 async fn recur_ffrt<P, C>( in recur_ffrt() 153 consumer: &C, in recur_ffrt() argument 187 unsafe fn spawn_task_ffrt<P, C>( in spawn_task_ffrt() [all …]
|
/ohos5.0/docs/zh-cn/device-dev/kernel/ |
H A D | kernel-mini-extend-support.md | 1 # C++支持 6 C++作为目前使用最广泛的编程语言之一,支持类、封装、重载等特性,是在C语言基础上开发的一种面向对象的编程语言。 11 C++代码的识别主要由编译器支持,系统主要对全局对象进行构造函数调用,进行初始化操作。 19 **表1** C++支持接口 23 | 使用C++特性的前置条件 | LOS_CppSystemInit | C++构造函数初始化 | 28 使用C++特性之前,需要调用函数LOS_CppSystemInit,实现C++构造函数初始化,其中被初始化的构造函数存在init_array这个段中,段区间通过变量__init_array_star… 48 /* 启动阶段C++初始化 */ 50 /* C++业务 */
|