C/C++ API Reference
Loading...
Searching...
No Matches
config.h
1// Copyright 2020 The Pigweed Authors
2//
3// Licensed under the Apache License, Version 2.0 (the "License"); you may not
4// use this file except in compliance with the License. You may obtain a copy of
5// the License at
6//
7// https://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, WITHOUT
11// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
12// License for the specific language governing permissions and limitations under
13// the License.
14
15// Utilities for building std::byte arrays from strings or integer values.
16#pragma once
17
18#include <cstddef>
19
21
25#ifndef PW_KVS_LOG_LEVEL
26#define PW_KVS_LOG_LEVEL PW_LOG_LEVEL_INFO
27#endif // PW_KVS_LOG_LEVEL
28
32#ifndef PW_KVS_MAX_FLASH_ALIGNMENT
33#define PW_KVS_MAX_FLASH_ALIGNMENT 256UL
34#endif // PW_KVS_MAX_FLASH_ALIGNMENT
35
36static_assert((PW_KVS_MAX_FLASH_ALIGNMENT >= 16UL),
37 "Max flash alignment is required to be at least 16");
38
45#ifndef PW_KVS_REMOVE_DELETED_KEYS_IN_HEAVY_MAINTENANCE
46#define PW_KVS_REMOVE_DELETED_KEYS_IN_HEAVY_MAINTENANCE 1
47#endif // PW_KVS_REMOVE_DELETED_KEYS_IN_HEAVY_MAINTENANCE
48
49namespace pw::kvs {
50
51inline constexpr size_t kMaxFlashAlignment = PW_KVS_MAX_FLASH_ALIGNMENT;
52
53} // namespace pw::kvs
#define PW_KVS_MAX_FLASH_ALIGNMENT
Definition: config.h:33
Lightweight key-value store library.
Definition: key_value_store.h:40