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 "ndk_data_conversion.h"
17 
18 namespace OHOS::UDMF {
GetNativeUnifiedData(OH_UdmfData * ndkData,std::shared_ptr<UnifiedData> & data)19     Status NdkDataConversion::GetNativeUnifiedData(OH_UdmfData* ndkData, std::shared_ptr<UnifiedData>& data)
20     {
21         if (ndkData == nullptr || data == nullptr || ndkData->cid != NdkStructId::UDMF_UNIFIED_DATA_STRUCT_ID) {
22             return Status::E_INVALID_PARAMETERS;
23         }
24         data = ndkData->unifiedData_;
25         return Status::E_OK;
26     }
27 
GetNdkUnifiedData(std::shared_ptr<UnifiedData> data,OH_UdmfData * ndkData)28     Status NdkDataConversion::GetNdkUnifiedData(std::shared_ptr<UnifiedData> data, OH_UdmfData* ndkData)
29     {
30         if (data == nullptr || ndkData == nullptr || ndkData->cid != NdkStructId::UDMF_UNIFIED_DATA_STRUCT_ID) {
31             return Status::E_INVALID_PARAMETERS;
32         }
33         ndkData->unifiedData_ = data;
34         return Status::E_OK;
35     }
36 }