40 lines
972 B
C++
40 lines
972 B
C++
#ifndef __CANERRORMESSAGE_H_
|
|
#define __CANERRORMESSAGE_H_
|
|
|
|
#ifdef __cplusplus
|
|
|
|
#include "icsneo/communication/message/message.h"
|
|
#include "icsneo/icsneoc2types.h"
|
|
|
|
namespace icsneo {
|
|
|
|
enum class CANErrorCode : icsneoc2_can_error_code_t
|
|
{
|
|
NoError = icsneoc2_can_error_code_no_error,
|
|
StuffError = icsneoc2_can_error_code_stuff_error,
|
|
FormError = icsneoc2_can_error_code_form_error,
|
|
AckError = icsneoc2_can_error_code_ack_error,
|
|
Bit1Error = icsneoc2_can_error_code_bit1_error,
|
|
Bit0Error = icsneoc2_can_error_code_bit0_error,
|
|
CRCError = icsneoc2_can_error_code_crc_error,
|
|
NoChange = icsneoc2_can_error_code_no_change
|
|
};
|
|
class CANErrorMessage : public RawMessage {
|
|
public:
|
|
CANErrorMessage() : RawMessage(Type::CANError) {}
|
|
uint8_t transmitErrorCount;
|
|
uint8_t receiveErrorCount;
|
|
bool busOff;
|
|
bool errorPassive;
|
|
bool errorWarn;
|
|
CANErrorCode dataErrorCode;
|
|
CANErrorCode errorCode;
|
|
};
|
|
|
|
using CANErrorCountMessage = CANErrorMessage;
|
|
|
|
}
|
|
|
|
#endif // __cplusplus
|
|
|
|
#endif |