53 lines
1.4 KiB
C++
53 lines
1.4 KiB
C++
/**
|
|
* @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 <string>
|
|
#include <vector>
|
|
#include <cstdint>
|
|
|
|
/**
|
|
* @brief Describes one signal inside a DBC frame.
|
|
*/
|
|
struct SignalInfo {
|
|
std::string name; /**< Signal name. */
|
|
std::uint32_t startBit; /**< Start bit in DBC notation. */
|
|
std::uint32_t length; /**< Signal length in bits. */
|
|
bool isLittleEndian; /**< true for Intel, false for Motorola. */
|
|
bool isSigned; /**< true if signal is signed. */
|
|
double factor; /**< Scaling factor. */
|
|
double offset; /**< Physical offset. */
|
|
double minimum; /**< Minimum physical value. */
|
|
double maximum; /**< Maximum physical value. */
|
|
std::string unit; /**< Physical unit. */
|
|
std::vector<std::string> receivers; /**< Signal receivers. */
|
|
std::string comment; /**< Optional signal comment. */
|
|
|
|
SignalInfo()
|
|
: name()
|
|
, startBit (0U)
|
|
, length (0U)
|
|
, isLittleEndian (true)
|
|
, isSigned (false)
|
|
, factor (1.0)
|
|
, offset (0.0)
|
|
, minimum (0.0)
|
|
, maximum (0.0)
|
|
, unit()
|
|
, receivers()
|
|
, comment() {
|
|
}
|
|
};
|
|
|
|
#endif /* SIGNAL_INFO_H */
|