Skip to content

Commit 10616d1

Browse files
committed
_protomatter: move get/set paused into shared-module
1 parent 2858dac commit 10616d1

File tree

3 files changed

+17
-8
lines changed

3 files changed

+17
-8
lines changed

shared-bindings/_protomatter/Protomatter.c

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -193,20 +193,15 @@ static void check_for_deinit(protomatter_protomatter_obj_t *self) {
193193
STATIC mp_obj_t protomatter_protomatter_get_paused(mp_obj_t self_in) {
194194
protomatter_protomatter_obj_t *self = (protomatter_protomatter_obj_t*)self_in;
195195
check_for_deinit(self);
196-
return mp_obj_new_bool(self->paused);
196+
return mp_obj_new_bool(common_hal_protomatter_protomatter_get_paused(self));
197197
}
198198
MP_DEFINE_CONST_FUN_OBJ_1(protomatter_protomatter_get_paused_obj, protomatter_protomatter_get_paused);
199199

200200
STATIC mp_obj_t protomatter_protomatter_set_paused(mp_obj_t self_in, mp_obj_t value_in) {
201201
protomatter_protomatter_obj_t *self = (protomatter_protomatter_obj_t*)self_in;
202202
check_for_deinit(self);
203203
bool paused = mp_obj_is_true(value_in);
204-
if (paused && !self->paused) {
205-
_PM_stop(&self->core);
206-
} else if (!paused && self->paused) {
207-
_PM_resume(&self->core);
208-
}
209-
self->paused = paused;
204+
common_hal_protomatter_protomatter_set_paused(self, paused);
210205

211206
return mp_const_none;
212207
}
@@ -262,7 +257,7 @@ STATIC void protomatter_protomatter_deinit_void(mp_obj_t self_in) {
262257
}
263258

264259
STATIC void protomatter_protomatter_set_brightness(mp_obj_t self_in, mp_float_t value) {
265-
protomatter_protomatter_set_paused(self_in, mp_obj_new_bool(value <= 0));
260+
common_hal_protomatter_protomatter_set_paused(self_in, value <= 0);
266261
}
267262

268263
STATIC const framebuffer_p_t protomatter_protomatter_proto = {

shared-bindings/_protomatter/Protomatter.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,5 +52,7 @@ void common_hal_protomatter_protomatter_construct(protomatter_protomatter_obj_t*
5252
void common_hal_protomatter_protomatter_deinit(protomatter_protomatter_obj_t*);
5353
void protomatter_protomatter_collect_ptrs(protomatter_protomatter_obj_t*);
5454
void common_hal_protomatter_protomatter_reconstruct(protomatter_protomatter_obj_t* self, mp_obj_t framebuffer);
55+
void common_hal_protomatter_protomatter_set_paused(protomatter_protomatter_obj_t* self, bool paused);
56+
bool common_hal_protomatter_protomatter_get_paused(protomatter_protomatter_obj_t* self);
5557

5658
#endif

shared-module/_protomatter/Protomatter.c

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -180,3 +180,15 @@ void protomatter_protomatter_collect_ptrs(protomatter_protomatter_obj_t* self) {
180180
gc_collect_ptr(self->core.screenData);
181181
}
182182

183+
void common_hal_protomatter_protomatter_set_paused(protomatter_protomatter_obj_t* self, bool paused) {
184+
if (paused && !self->paused) {
185+
_PM_stop(&self->core);
186+
} else if (!paused && self->paused) {
187+
_PM_resume(&self->core);
188+
}
189+
self->paused = paused;
190+
}
191+
192+
bool common_hal_protomatter_protomatter_get_paused(protomatter_protomatter_obj_t* self) {
193+
return self->paused;
194+
}

0 commit comments

Comments
 (0)