COMMS
Template library intended to help with implementation of communication protocols.
comms.h
Go to the documentation of this file.
1 //
2 // Copyright 2014 - 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 
10 
11 #pragma once
12 
13 #include "comms/CompileControl.h"
14 #include "comms/fields.h"
15 #include "comms/protocols.h"
16 #include "comms/units.h"
17 #include "comms/version.h"
18 #include "comms/dispatch.h"
19 #include "comms/field_cast.h"
20 #include "comms/iterator.h"
21 #include "process.h"
22 
23 #include "comms/Message.h"
24 #include "comms/EmptyHandler.h"
25 #include "comms/GenericHandler.h"
26 #include "comms/MessageBase.h"
27 #include "comms/MsgFactory.h"
28 #include "comms/MsgDispatcher.h"
29 #include "comms/GenericMessage.h"
30 
31 #include "comms/util/detect.h"
32 #include "comms/util/assign.h"
33 #include "comms/util/type_traits.h"
Contains various compiler related definitions.
Contains definition of comms::EmptyHandler class.
This file contains definition of common handler.
Provides implementation of comms::GenericMessage class.
Provides common base class for the custom messages with default implementation.
Contains definition of Message object interface and various base classes for custom messages.
Contains definition of MsgDispatcher class which facilitates dispatching of message object to appropr...
Contains definition of comms::MsgFactory class.
Provides helper assign() function to allow easy assignment of values to collections or views.
Contains extra logic to help with dispatching message types and objects.
Contained definition of field_cast() function. Now deprecated, use "comms/cast.h" instead.
This file provides all the definitions from comms::field namespace.
Provides auxiliary functions for retrieving best type of iterator for read/write operations.
Provides auxiliary functions for processing input and dispatching messages.
This file provides all the definitions from comms::protocol namespace.
Replacement to some types from standard type_traits.
This file contains all the functions required for proper units conversion.
Various compile-time detection functions of whether specific member functions and/or types exist.
Contains version information of the library.