chore: cleanup and mild refactoring

This commit is contained in:
Philip Stark 2023-05-12 17:37:21 +02:00
parent 70458d4ed9
commit 519b36bfed
3 changed files with 26 additions and 189 deletions

View file

@ -97,17 +97,12 @@ WORDCLOCK_SCHEMA = cv.Schema(
cv.Required(CONF_SEGMENTS): cv.ensure_list(WORDCLOCK_SEGMENT_SCHEMA),
cv.Required(CONF_MINUTES): cv.ensure_list(WORDCLOCK_MINUTE_SCHEMA),
cv.Required(CONF_HOURS): cv.ensure_list(WORDCLOCK_HOUR_SCHEMA),
# cv.Optional(
# CONF_FADE_LENGTH, default="700ms"
# ): cv.,
cv.Optional(
CONF_FADE_LENGTH, default="700ms"
): cv.positive_time_period_milliseconds,
cv.Optional(
CONF_UPDATE_INTERVAL, default="16ms"
): cv.positive_time_period_milliseconds,
# cv.GenerateID(DATA_VECTOR_SEGMENTS_HOUR): cv.declare_id(cg.std_vector.template(cg.std_vector.template(cg.uint16))),
# cv.GenerateID(DATA_VECTOR_SEGMENTS_MINUTE): cv.declare_id(cg.std_vector.template(cg.std_vector.template(cg.uint16))),
cv.GenerateID(DATA_VECTOR_SEGMENTS): cv.declare_id(cg.std_vector.template(cg.uint16)),
}
)
@ -127,16 +122,8 @@ async def to_code(config):
wrapped_color_off = await cg.get_variable(config[CONF_COLOR_OFF])
cg.add(var.set_off_color(wrapped_color_off))
# segments_vector_ptr = cg.new_Pvariable(config[DATA_VECTOR_SEGMENTS])
# void Wordclock::setup_transitions(uint32_t milliseconds) {
# this->on_transformer->setup(0, this->brightness, milliseconds);
# this->off_transformer->setup(this->brightness, 0, milliseconds);
# }
cg.add(var.setup_transitions(config[CONF_FADE_LENGTH]))
cg.add(var.set_brightness(int(config[CONF_BRIGHTNESS] * 255)))
SEGMENT_MAP = dict()
for idx, segment in enumerate(config[CONF_SEGMENTS]):
@ -151,7 +138,6 @@ async def to_code(config):
exp = cg.StructInitializer(SegmentCoords, ("x1", x1), ("y1", y1), ("x2", x2), ("y2", y2),)
cg.add(var.add_segment(exp))
if CONF_WORDCLOCK_STATIC_SEGMENTS in config:
for segment_name in config[CONF_WORDCLOCK_STATIC_SEGMENTS]:
cg.add(var.add_static(SEGMENT_MAP[segment_name]))
@ -159,45 +145,9 @@ async def to_code(config):
for idx, hour in enumerate(config[CONF_HOURS]):
segment_ids = [SEGMENT_MAP[a] for a in hour[CONF_SEGMENTS]]
cg.add(var.add_hour(hour[CONF_HOUR], cg.std_vector.template(cg.uint16).new(segment_ids)))
# segments_vector_ptr = segments_vector_ptr.new(segment_ids)
# foo = await cg.get_variable(config[DATA_VECTOR_SEGMENTS])
# foo = cg.std_vector.template(cg.uint16).new(segment_ids)
# del foo
for idx, minute in enumerate(config[CONF_MINUTES]):
segment_ids = [SEGMENT_MAP[a] for a in minute[CONF_SEGMENTS]]
cg.add(var.add_minute(minute[CONF_MINUTE], minute[CONF_HOUR_OFFSET], cg.std_vector.template(cg.uint16).new(segment_ids)))
# segments_vector_ptr = segments_vector_ptr.new(segment_ids)
# segments_vector_ptr = cg.new_Pvariable(config[DATA_VECTOR_SEGMENTS], segment_ids)
# foo = await cg.get_variable(config[DATA_VECTOR_SEGMENTS])
# foo = cg.std_vector.template(cg.uint16).new(segment_ids)
# segments_vector = cg.new_Pvariable(core.ID(None, type=cg.std_vector.template(cg.uint16)), segment_ids)
# del foo
await cg.register_component(var, config)
# hours = []
# for idx, hour in enumerate(config[CONF_HOURS]):
# segment_ids = [SEGMENT_MAP[a] for a in hour[CONF_SEGMENTS]]
# exp = cg.std_vector.template(cg.uint16)(segment_ids)
# hours.append(exp)
# hours_array = cg.new_variable(config[DATA_VECTOR_SEGMENTS_HOUR], cg.std_vector.template(cg.std_vector.template(cg.uint16))(hours))
# minutes = []
# for idx, hour in enumerate(config[CONF_MINUTES]):
# segment_ids = [SEGMENT_MAP[a] for a in hour[CONF_SEGMENTS]]
# exp = cg.std_vector.template(cg.uint16)(segment_ids)
# minutes.append(exp)
# minutes_array = cg.new_variable(config[DATA_VECTOR_SEGMENTS_MINUTE], cg.std_vector.template(cg.std_vector.template(cg.uint16))(minutes))
# for idx, hour in enumerate(config[CONF_HOURS]):
# exp = cg.std_vector.template(cg.uint16)(segment_ids)
# cg.add(var.add_hour(hour[CONF_HOUR], cpp.UnaryOpExpression("&", hours_array[idx])))
# for idx, minute in enumerate(config[CONF_MINUTES]):
# exp = cg.std_vector.template(cg.uint16)(segment_ids)
# cg.add(var.add_minute(minute[CONF_MINUTE], cpp.UnaryOpExpression("&", minutes_array[idx])))
# for idx, minute in enumerate(config[CONF_MINUTES]):
# cg.add(var.add_hour_offset(minute[CONF_MINUTE], minute[CONF_HOUR_OFFSET]))