Added BaseMessages with messageid

This commit is contained in:
simon 2025-04-27 12:57:42 +02:00
parent 09e2afe329
commit 73a7c8469a
3 changed files with 19 additions and 3 deletions

View File

@ -27,7 +27,7 @@ type ProtoMessage struct {
type ProtoMessagePayload struct {
Name string `json:"name"`
DataType string `json:"type"`
ArrayLength int `json:"array,omitempty"`
ArrayLength int `json:"array,omitempty"` // optional falls kein array
}
type Proto struct {

View File

@ -31,6 +31,20 @@ typedef union {
} PayloadUnion;
{{end}}
{{define "basemessage"}}
typdef struct {
uint8_t version;
MessageID {{.CenumPCTOESP.EnumName}};
PayloadUnion payload;
} PCTOESPBaseMessage;
typdef struct {
uint8_t version;
MessageID {{.CenumESPTOPC.EnumName}};
PayloadUnion payload;
} ESPTOPCBaseMessage;
{{end}}
{{define "handler"}}
{{- range . }}
void (*on_{{ .Name | snake }})({{ .Name }}Payload*) = NULL;
@ -55,7 +69,7 @@ void dispatch_message(uint8_t msg_id, void* payload) {
{{define "send_functions"}}
{{- range .}}
{{ $argLen := len .Payload }}
void send_{{.Name | snake}}({{- range $i, $p := .Payload}}{{$p.DataType}} {{$p.Name}} {{- if not (isLast $argLen $i) }}, {{ end}} {{- end}}) {
void send_{{.Name | snake}}({{- range $i, $p := .Payload}}{{$p.DataType}} {{if .ArrayLength}}*{{end}}{{$p.Name}} {{- if not (isLast $argLen $i) }}, {{ end}} {{- end}}) {
{{.Name}}Payload payload;
// Payload-Daten zuweisen

View File

@ -11,5 +11,7 @@
{{ block "union" .PayloadStructs }} {{ end }}
{{ block "basemessage" . }} {{ end }}
#endif
{{- end -}}