Files
drivers_framework/utils/include/hdf_map.h
T
2021-05-17 20:03:06 +08:00

41 lines
864 B
C

/*
* Copyright (c) 2020-2021 Huawei Device Co., Ltd.
*
* HDF is dual licensed: you can use it either under the terms of
* the GPL, or the BSD license, at your option.
* See the LICENSE file in the root of this repository for complete details.
*/
#ifndef HDF_MAP_H
#define HDF_MAP_H
#include "hdf_base.h"
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
struct MapNode;
typedef struct {
struct MapNode **nodes; /**< Map node bucket */
uint32_t nodeSize; /**< Map node count */
uint32_t bucketSize; /**< Map node bucket size */
} Map;
void MapInit(Map *map);
void MapDelete(Map *map);
int32_t MapSet(Map *map, const char *key, const void *value, uint32_t valueSize);
void *MapGet(const Map *map, const char *key);
int32_t MapErase(Map *map, const char *key);
#ifdef __cplusplus
}
#endif /* __cplusplus */
#endif /* HDF_MAP_H */