mirror of https://github.com/rusefi/bldc.git
120 lines
4.0 KiB
C
Executable File
120 lines
4.0 KiB
C
Executable File
/*
|
|
* UAVCAN data structure definition for libcanard.
|
|
*
|
|
* Autogenerated, do not edit.
|
|
*
|
|
* Source file: /Users/jaime/Developer/AION/ardupilot_private/modules/uavcan/dsdl/uavcan/protocol/1.GetNodeInfo.uavcan
|
|
*/
|
|
|
|
#ifndef __UAVCAN_PROTOCOL_GETNODEINFO
|
|
#define __UAVCAN_PROTOCOL_GETNODEINFO
|
|
|
|
#include <stdint.h>
|
|
#include "canard.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C"
|
|
{
|
|
#endif
|
|
|
|
#include <uavcan/protocol/HardwareVersion.h>
|
|
#include <uavcan/protocol/NodeStatus.h>
|
|
#include <uavcan/protocol/SoftwareVersion.h>
|
|
|
|
/******************************* Source text **********************************
|
|
#
|
|
# Full node info request.
|
|
# Note that all fields of the response section are byte-aligned.
|
|
#
|
|
|
|
---
|
|
|
|
#
|
|
# Current node status
|
|
#
|
|
NodeStatus status
|
|
|
|
#
|
|
# Version information shall not be changed while the node is running.
|
|
#
|
|
SoftwareVersion software_version
|
|
HardwareVersion hardware_version
|
|
|
|
#
|
|
# Human readable non-empty ASCII node name.
|
|
# Node name shall not be changed while the node is running.
|
|
# Empty string is not a valid node name.
|
|
# Allowed characters are: a-z (lowercase ASCII letters) 0-9 (decimal digits) . (dot) - (dash) _ (underscore).
|
|
# Node name is a reversed internet domain name (like Java packages), e.g. "com.manufacturer.project.product".
|
|
#
|
|
uint8[<=80] name
|
|
******************************************************************************/
|
|
|
|
/********************* DSDL signature source definition ***********************
|
|
uavcan.protocol.GetNodeInfo
|
|
---
|
|
uavcan.protocol.NodeStatus status
|
|
uavcan.protocol.SoftwareVersion software_version
|
|
uavcan.protocol.HardwareVersion hardware_version
|
|
saturated uint8[<=80] name
|
|
******************************************************************************/
|
|
|
|
#define UAVCAN_PROTOCOL_GETNODEINFO_ID 1
|
|
#define UAVCAN_PROTOCOL_GETNODEINFO_NAME "uavcan.protocol.GetNodeInfo"
|
|
#define UAVCAN_PROTOCOL_GETNODEINFO_SIGNATURE (0xEE468A8121C46A9EULL)
|
|
|
|
#define UAVCAN_PROTOCOL_GETNODEINFO_REQUEST_MAX_SIZE ((0 + 7)/8)
|
|
|
|
typedef struct
|
|
{
|
|
uint8_t empty;
|
|
} uavcan_protocol_GetNodeInfoRequest;
|
|
|
|
extern
|
|
uint32_t uavcan_protocol_GetNodeInfoRequest_encode(uavcan_protocol_GetNodeInfoRequest* source, void* msg_buf);
|
|
|
|
extern
|
|
int32_t uavcan_protocol_GetNodeInfoRequest_decode(const CanardRxTransfer* transfer, uint16_t payload_len, uavcan_protocol_GetNodeInfoRequest* dest, uint8_t** dyn_arr_buf);
|
|
|
|
extern
|
|
uint32_t uavcan_protocol_GetNodeInfoRequest_encode_internal(uavcan_protocol_GetNodeInfoRequest* source, void* msg_buf, uint32_t offset, uint8_t root_item);
|
|
|
|
extern
|
|
int32_t uavcan_protocol_GetNodeInfoRequest_decode_internal(const CanardRxTransfer* transfer, uint16_t payload_len, uavcan_protocol_GetNodeInfoRequest* dest, uint8_t** dyn_arr_buf, int32_t offset);
|
|
|
|
#define UAVCAN_PROTOCOL_GETNODEINFO_RESPONSE_MAX_SIZE ((3015 + 7)/8)
|
|
|
|
// Constants
|
|
|
|
#define UAVCAN_PROTOCOL_GETNODEINFO_RESPONSE_NAME_MAX_LENGTH 80
|
|
|
|
typedef struct
|
|
{
|
|
// FieldTypes
|
|
uavcan_protocol_NodeStatus status; //
|
|
uavcan_protocol_SoftwareVersion software_version; //
|
|
uavcan_protocol_HardwareVersion hardware_version; //
|
|
struct
|
|
{
|
|
uint8_t len; // Dynamic array length
|
|
uint8_t* data; // Dynamic Array 8bit[80] max items
|
|
} name;
|
|
|
|
} uavcan_protocol_GetNodeInfoResponse;
|
|
|
|
extern
|
|
uint32_t uavcan_protocol_GetNodeInfoResponse_encode(uavcan_protocol_GetNodeInfoResponse* source, void* msg_buf);
|
|
|
|
extern
|
|
int32_t uavcan_protocol_GetNodeInfoResponse_decode(const CanardRxTransfer* transfer, uint16_t payload_len, uavcan_protocol_GetNodeInfoResponse* dest, uint8_t** dyn_arr_buf);
|
|
|
|
extern
|
|
uint32_t uavcan_protocol_GetNodeInfoResponse_encode_internal(uavcan_protocol_GetNodeInfoResponse* source, void* msg_buf, uint32_t offset, uint8_t root_item);
|
|
|
|
extern
|
|
int32_t uavcan_protocol_GetNodeInfoResponse_decode_internal(const CanardRxTransfer* transfer, uint16_t payload_len, uavcan_protocol_GetNodeInfoResponse* dest, uint8_t** dyn_arr_buf, int32_t offset);
|
|
|
|
#ifdef __cplusplus
|
|
} // extern "C"
|
|
#endif
|
|
#endif // __UAVCAN_PROTOCOL_GETNODEINFO
|