Skip to content

Commit 616b4da

Browse files
committed
Remove accel.reset_gestures(), merge functionality into get_gestures().
The get and reset functionality must be atomic, otherwise it's possible to miss gestures in between calls to these functions.
1 parent 86d6c28 commit 616b4da

File tree

5 files changed

+2
-17
lines changed

5 files changed

+2
-17
lines changed

docs/accelerometer.rst

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -57,10 +57,7 @@ Functions
5757
.. py:function:: get_gestures()
5858
5959
Return a tuple of the gesture history. The most recent is listed last.
60-
61-
.. py:function:: reset_gestures()
62-
63-
Clears the gesture history.
60+
Also clears the gesture history before returning.
6461

6562
Examples
6663
--------

docs/microbit_micropython_api.rst

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -234,8 +234,6 @@ The accelerometer is accessed via the ``accelerometer`` object::
234234
accelerometer.was_gesture(name)
235235
# return a tuple of the gesture history. The most recent is listed last.
236236
accelerometer.get_gestures()
237-
# clears the gesture history.
238-
accelerometer.reset_gestures()
239237

240238
The recognised gestures are: ``up``, ``down``, ``left``, ``right``, ``face up``, ``face down``, ``freefall``, ``3g``, ``6g``, ``8g``, ``shake``.
241239

inc/genhdr/qstrdefs.generated.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -449,7 +449,6 @@ QDEF(MP_QSTR_current_gesture, (const byte*)"\xd4\x0f" "current_gesture")
449449
QDEF(MP_QSTR_is_gesture, (const byte*)"\x07\x0a" "is_gesture")
450450
QDEF(MP_QSTR_was_gesture, (const byte*)"\xd8\x0b" "was_gesture")
451451
QDEF(MP_QSTR_get_gestures, (const byte*)"\x18\x0c" "get_gestures")
452-
QDEF(MP_QSTR_reset_gestures, (const byte*)"\x1b\x0e" "reset_gestures")
453452
QDEF(MP_QSTR_up, (const byte*)"\xa0\x02" "up")
454453
QDEF(MP_QSTR_down, (const byte*)"\x37\x04" "down")
455454
QDEF(MP_QSTR_left, (const byte*)"\xde\x04" "left")

inc/microbit/qstrdefsport.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -166,7 +166,6 @@ Q(current_gesture)
166166
Q(is_gesture)
167167
Q(was_gesture)
168168
Q(get_gestures)
169-
Q(reset_gestures)
170169
Q(up)
171170
Q(down)
172171
Q(left)

source/microbit/microbitaccelerometer.cpp

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -169,18 +169,11 @@ mp_obj_t microbit_accelerometer_get_gestures(mp_obj_t self_in) {
169169
uint gesture = (gesture_list[i >> 1] >> (4 * (i & 1))) & 0x0f;
170170
o->items[i] = MP_OBJ_NEW_QSTR(gesture_name_map[gesture]);
171171
}
172+
gesture_list_cur = 0;
172173
return o;
173174
}
174175
MP_DEFINE_CONST_FUN_OBJ_1(microbit_accelerometer_get_gestures_obj, microbit_accelerometer_get_gestures);
175176

176-
mp_obj_t microbit_accelerometer_reset_gestures(mp_obj_t self_in) {
177-
microbit_accelerometer_obj_t *self = (microbit_accelerometer_obj_t*)self_in;
178-
update(self);
179-
gesture_list_cur = 0;
180-
return mp_const_none;
181-
}
182-
MP_DEFINE_CONST_FUN_OBJ_1(microbit_accelerometer_reset_gestures_obj, microbit_accelerometer_reset_gestures);
183-
184177
STATIC const mp_map_elem_t microbit_accelerometer_locals_dict_table[] = {
185178
{ MP_OBJ_NEW_QSTR(MP_QSTR_get_x), (mp_obj_t)&microbit_accelerometer_get_x_obj },
186179
{ MP_OBJ_NEW_QSTR(MP_QSTR_get_y), (mp_obj_t)&microbit_accelerometer_get_y_obj },
@@ -190,7 +183,6 @@ STATIC const mp_map_elem_t microbit_accelerometer_locals_dict_table[] = {
190183
{ MP_OBJ_NEW_QSTR(MP_QSTR_is_gesture), (mp_obj_t)&microbit_accelerometer_is_gesture_obj },
191184
{ MP_OBJ_NEW_QSTR(MP_QSTR_was_gesture), (mp_obj_t)&microbit_accelerometer_was_gesture_obj },
192185
{ MP_OBJ_NEW_QSTR(MP_QSTR_get_gestures), (mp_obj_t)&microbit_accelerometer_get_gestures_obj },
193-
{ MP_OBJ_NEW_QSTR(MP_QSTR_reset_gestures), (mp_obj_t)&microbit_accelerometer_reset_gestures_obj },
194186
};
195187

196188
STATIC MP_DEFINE_CONST_DICT(microbit_accelerometer_locals_dict, microbit_accelerometer_locals_dict_table);

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy