/** * @file signal_info.h * @brief * * Created: 2026-03-13 * Author: Deeaitch (Dim. Himro) * * Licensed under the MIT License. * See LICENSE file in the project root for full license text. */ #ifndef SIGNAL_INFO_H #define SIGNAL_INFO_H #include "value_descriptions.h" #include "multiplexing.h" #include #include #include /** * @brief Describes one signal inside a DBC frame. */ struct SignalInfo { Multiplexing multiplexing; std::string name; /**< Signal name. */ std::uint32_t startBit = 0U; /**< Start bit in DBC notation. */ std::uint32_t length = 0U; /**< Signal length in bits. */ bool isLittleEndian = true; /**< true for Intel, false for Motorola. */ bool isSigned = false; /**< true if signal is signed. */ double factor = 1.0; /**< Scaling factor. */ double offset = 0.0; /**< Physical offset. */ double minimum = 0.0; /**< Minimum physical value. */ double maximum = 0.0; /**< Maximum physical value. */ std::string unit; /**< Physical unit. */ std::vector receivers; /**< Signal receivers. */ ValueDescriptions valueDescriptions; /**< Raw integer state descriptions. */ std::string comment; /**< Optional signal comment. */ SignalInfo() = default; }; #endif /* SIGNAL_INFO_H */