11b8d9b87Sopenharmony_ci/*
21b8d9b87Sopenharmony_ci * Copyright (C) 2022 Huawei Device Co., Ltd.
31b8d9b87Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
41b8d9b87Sopenharmony_ci * you may not use this file except in compliance with the License.
51b8d9b87Sopenharmony_ci * You may obtain a copy of the License at
61b8d9b87Sopenharmony_ci *
71b8d9b87Sopenharmony_ci *    http://www.apache.org/licenses/LICENSE-2.0
81b8d9b87Sopenharmony_ci *
91b8d9b87Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software
101b8d9b87Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
111b8d9b87Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
121b8d9b87Sopenharmony_ci * See the License for the specific language governing permissions and
131b8d9b87Sopenharmony_ci * limitations under the License.
141b8d9b87Sopenharmony_ci */
151b8d9b87Sopenharmony_ci
161b8d9b87Sopenharmony_ci#ifndef HCF_UTILS_H
171b8d9b87Sopenharmony_ci#define HCF_UTILS_H
181b8d9b87Sopenharmony_ci
191b8d9b87Sopenharmony_ci#include <stdbool.h>
201b8d9b87Sopenharmony_ci#include <stdint.h>
211b8d9b87Sopenharmony_ci#include "blob.h"
221b8d9b87Sopenharmony_ci#include "object_base.h"
231b8d9b87Sopenharmony_ci
241b8d9b87Sopenharmony_ci#ifdef __cplusplus
251b8d9b87Sopenharmony_ciextern "C" {
261b8d9b87Sopenharmony_ci#endif
271b8d9b87Sopenharmony_ci
281b8d9b87Sopenharmony_cibool HcfIsStrValid(const char *str, uint32_t maxLen);
291b8d9b87Sopenharmony_cibool HcfIsBlobValid(const HcfBlob *blob);
301b8d9b87Sopenharmony_cibool HcfIsClassMatch(const HcfObjectBase *obj, const char *className);
311b8d9b87Sopenharmony_cisize_t HcfStrlen(const char *str);
321b8d9b87Sopenharmony_ci
331b8d9b87Sopenharmony_ci#ifdef __cplusplus
341b8d9b87Sopenharmony_ci}
351b8d9b87Sopenharmony_ci#endif
361b8d9b87Sopenharmony_ci
371b8d9b87Sopenharmony_ci#endif
38