forked from adafruit/circuitpython
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMessage.c
More file actions
50 lines (38 loc) · 1.33 KB
/
Message.c
File metadata and controls
50 lines (38 loc) · 1.33 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
// This file is part of the CircuitPython project: https://circuitpython.org
//
// SPDX-FileCopyrightText: Copyright (c) 2020 Jeff Epler for Adafruit Industries
//
// SPDX-License-Identifier: MIT
#include "shared-module/canio/Message.h"
#include "shared-bindings/canio/Message.h"
#include <string.h>
void common_hal_canio_message_construct(canio_message_obj_t *self, int id, void *data, size_t size, bool extended) {
self->id = id;
self->size = size;
self->extended = extended;
if (data) {
memcpy(self->data, data, size);
}
}
int common_hal_canio_message_get_id(const canio_message_obj_t *self) {
return self->id;
}
void common_hal_canio_message_set_id(canio_message_obj_t *self, int id) {
self->id = id;
}
const void *common_hal_canio_message_get_data(const canio_message_obj_t *self) {
return self->data;
}
const void common_hal_canio_message_set_data(canio_message_obj_t *self, const void *data, size_t size) {
self->size = size;
memcpy(self->data, data, size);
}
size_t common_hal_canio_message_get_length(const canio_message_obj_t *self) {
return self->size;
}
bool common_hal_canio_message_get_extended(const canio_message_obj_t *self) {
return self->extended;
}
void common_hal_canio_message_set_extended(canio_message_obj_t *self, bool extended) {
self->extended = extended;
}