/* * @brief Defines the communication configuration * @file aman/types/Communication.h * @author Sven Czarnian * @copyright Copyright 2021 Sven Czarnian * @license This project is published under the GNU General Public License v3 (GPLv3) */ #pragma once #include namespace aman { /** * @brief Defines the communication structure * @ingroup types */ struct Communication { bool valid; /**< Marks if the configuration is valid */ std::string address; /**< The address of the backend */ std::uint16_t portReporter; /**< The reported port of the backend */ std::uint16_t portNotification; /**< The notification port of the backend */ std::string serverPublicIdentifier; /**< The server's public identifier */ std::string clientPublicIdentifier; /**< The client's public identifier */ std::string clientPrivateIdentifier; /**< The client's private identifier */ /** * @brief Initializes an invalid configuration */ Communication() : valid(false), address(), portReporter(0), portNotification(0), serverPublicIdentifier(), clientPublicIdentifier(), clientPrivateIdentifier() { } }; }