COMMS
Template library intended to help with implementation of communication protocols.
Loading...
Searching...
No Matches
FixedValue.h
1//
2// Copyright 2019 - 2026 (C). Alex Robenko. All rights reserved.
3//
4// SPDX-License-Identifier: MPL-2.0
5//
6// This Source Code Form is subject to the terms of the Mozilla Public
7// License, v. 2.0. If a copy of the MPL was not distributed with this
8// file, You can obtain one at http://mozilla.org/MPL/2.0/.
9
10#pragma once
11
12namespace comms
13{
14
15namespace field
16{
17
18namespace adapter
19{
20
21template <typename TBase>
22class FixedValue : public TBase
23{
24 using BaseImpl = TBase;
25public:
26 using ValueType = typename BaseImpl::ValueType;
27
28 using BaseImpl::value;
29
30 ValueType& value() = delete;
31
32 template <typename U>
33 void setValue(U&& val) = delete;
34
35private:
36 using BaseImpl::setValue;
37
38};
39
40} // namespace adapter
41
42} // namespace field
43
44} // namespace comms
45
Main namespace for all classes / functions of COMMS library.