#pragma once #include #include struct cmc_now_playing_visual { struct ncvisual *visual; struct cmc_list_entry *entry; }; struct cmc_now_playing { struct ncplane *n; bool tick; u64 last_pos; u32 segment_count; struct ncplane *wave; array(struct cmc_now_playing_visual) visuals; struct cmc_list_entry *blitted; }; void cmc_now_playing_init(struct cmc_now_playing *np); bool cmc_now_playing_layout(struct cmc_now_playing *np, struct ncplane *parent, u32 y); bool cmc_now_playing_tick(struct cmc_now_playing *np, struct cmc_list_entry *entry); void cmc_now_playing_erase(struct cmc_now_playing *np); void cmc_now_playing_clear(struct cmc_now_playing *np); void cmc_now_playing_render(struct cmc_now_playing *np, struct cmc_list_entry *entry);