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