#ifndef CANNM_INTERNAL_H_\r
#define CANNM_INTERNAL_H_\r
\r
+/** @req CANNM188 @req CANNM196 @req CANNM199 */\r
#if (CANNM_DEV_ERROR_DETECT == STD_ON)\r
-#define CANNM_DET_REPORTERROR(serviceId, errorId) \\r
- Det_ReportError(MODULE_ID_CANNM, 0, serviceId, errorId)\r
+#define CANNM_DET_REPORTERROR(serviceId, errorId, instanceId) \\r
+ Det_ReportError(MODULE_ID_CANNM, (uint8)instanceId, serviceId, errorId)\r
\r
-#define CANNM_VALIDATE(expression, serviceId, errorId, ...) \\r
+#define CANNM_VALIDATE(expression, serviceId, errorId, instanceId, ...) \\r
if (!(expression)) { \\r
- CANNM_DET_REPORTERROR(serviceId, errorId); \\r
+ CANNM_DET_REPORTERROR(serviceId, errorId, instanceId); \\r
return __VA_ARGS__; \\r
}\r
\r
#endif\r
\r
#define CANNM_VALIDATE_INIT(serviceID, ...) \\r
- CANNM_VALIDATE((CanNm_Internal.InitStatus == CANNM_INIT), serviceID, CANNM_E_NO_INIT, __VA_ARGS__)\r
+ CANNM_VALIDATE((CanNm_Internal.InitStatus == CANNM_INIT), serviceID, CANNM_E_NO_INIT, 0, __VA_ARGS__)\r
\r
+/** @req CANNM192 */\r
#define CANNM_VALIDATE_CHANNEL(channel, serviceID, ...) \\r
- CANNM_VALIDATE( (channel < CANNM_CHANNEL_COUNT), serviceID, CANNM_E_INVALID_CHANNEL, __VA_ARGS__)\r
+ CANNM_VALIDATE( (channel < CANNM_CHANNEL_COUNT), serviceID, CANNM_E_INVALID_CHANNEL, channel, __VA_ARGS__)\r
\r
#define CANNM_VALIDATE_NOTNULL(ptr, serviceID, ...) \\r
- CANNM_VALIDATE( (ptr != NULL), serviceID, NM_E_NULL_POINTER, __VA_ARGS__)\r
+ CANNM_VALIDATE( (ptr != NULL), serviceID, NM_E_NULL_POINTER, 0, __VA_ARGS__)\r
\r
typedef enum {\r
CANNM_INIT,\r
- CANNM_UNINIT,\r
+ CANNM_UNINIT\r
} CanNm_InitStatusType;\r
\r
typedef struct {\r
- Nm_ModeType Mode;\r
- Nm_StateType State;\r
+ Nm_ModeType Mode; /**< @req CANNM092 */\r
+ Nm_StateType State; /**< @req CANNM094 */\r
boolean Requested;\r
uint32 TimeoutTimeLeft;\r
uint32 RepeatMessageTimeLeft;\r
} CanNm_InternalType;\r
\r
/* Timer helpers */\r
-static inline void CanNm_Internal_TickTimeoutTime( CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
-static inline void CanNm_Internal_TickRepeatMessageTime( CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
-static inline void CanNm_Internal_TickWaitBusSleepTime( CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
-static inline void CanNm_Internal_TickMessageCycleTime( CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
-static inline void CanNm_Internal_ClearCbv( CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
+static inline void CanNm_Internal_TickTimeoutTime( const CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
+static inline void CanNm_Internal_TickRepeatMessageTime( const CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
+static inline void CanNm_Internal_TickWaitBusSleepTime( const CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
+static inline void CanNm_Internal_TickMessageCycleTime( const CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
+static inline void CanNm_Internal_ClearCbv( const CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
\r
/* Message helpers */\r
-static inline void CanNm_Internal_TransmitMessage( CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
-static inline uint8 CanNm_Internal_GetUserDataOffset( CanNm_ChannelType* ChannelConf );\r
-static inline uint8* CanNm_Internal_GetUserDataPtr( CanNm_ChannelType* ChannelConf, uint8* MessageSduPtr );\r
-static inline uint8 CanNm_Internal_GetUserDataLength( CanNm_ChannelType* ChannelConf );\r
+static inline void CanNm_Internal_TransmitMessage( const CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
+static inline uint8 CanNm_Internal_GetUserDataOffset( const CanNm_ChannelType* ChannelConf );\r
+static inline uint8* CanNm_Internal_GetUserDataPtr( const CanNm_ChannelType* ChannelConf, uint8* MessageSduPtr );\r
+static inline uint8 CanNm_Internal_GetUserDataLength( const CanNm_ChannelType* ChannelConf );\r
\r
/* Transition helpers */\r
-static inline void CanNm_Internal_PrepareBusSleep_to_RepeatMessage( CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
-static inline void CanNm_Internal_PrepareBusSleep_to_BusSleep( CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
+static inline void CanNm_Internal_PrepareBusSleep_to_RepeatMessage( const CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
+static inline void CanNm_Internal_PrepareBusSleep_to_BusSleep( const CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
\r
-static inline void CanNm_Internal_BusSleep_to_RepeatMessage( CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
-static inline void CanNm_Internal_BusSleep_to_BusSleep( CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
+static inline void CanNm_Internal_BusSleep_to_RepeatMessage( const CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
+static inline void CanNm_Internal_BusSleep_to_BusSleep( const CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
\r
-static inline void CanNm_Internal_RepeatMessage_to_RepeatMessage( CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
-static inline void CanNm_Internal_RepeatMessage_to_ReadySleep( CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
-static inline void CanNm_Internal_RepeatMessage_to_NormalOperation( CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
+static inline void CanNm_Internal_RepeatMessage_to_RepeatMessage( const CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
+static inline void CanNm_Internal_RepeatMessage_to_ReadySleep( const CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
+static inline void CanNm_Internal_RepeatMessage_to_NormalOperation( const CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
\r
-static inline void CanNm_Internal_NormalOperation_to_RepeatMessage( CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
-static inline void CanNm_Internal_NormalOperation_to_ReadySleep( CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
-static inline void CanNm_Internal_NormalOperation_to_NormalOperation( CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
+static inline void CanNm_Internal_NormalOperation_to_RepeatMessage( const CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
+static inline void CanNm_Internal_NormalOperation_to_ReadySleep( const CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
+static inline void CanNm_Internal_NormalOperation_to_NormalOperation( const CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
\r
-static inline void CanNm_Internal_ReadySleep_to_NormalOperation( CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
-static inline void CanNm_Internal_ReadySleep_to_PrepareBusSleep( CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
-static inline void CanNm_Internal_ReadySleep_to_RepeatMessage( CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
+static inline void CanNm_Internal_ReadySleep_to_NormalOperation( const CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
+static inline void CanNm_Internal_ReadySleep_to_PrepareBusSleep( const CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
+static inline void CanNm_Internal_ReadySleep_to_RepeatMessage( const CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
\r
-static inline void CanNm_Internal_NetworkMode_to_NetworkMode( CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
+static inline void CanNm_Internal_NetworkMode_to_NetworkMode( const CanNm_ChannelType* ChannelConf, CanNm_Internal_ChannelType* ChannelInternal );\r
\r
\r
#endif /* CANNM_INTERNAL_H_ */\r