#pragma once #include #include #include #include "../../libclient/client.h" #include "../../portal/src/post_cache.h" #include "../../codec/codec.h" #include "ui/ui.h" struct cmc_search_page { u32 num; array(str) list; }; struct cmc_search { s32 id; str module; str query; array(struct cmc_search_page *) pages; }; struct cmc_list_entry { u32 id; u32 node_id; u64 duration; u64 start; u64 paused_at; u64 offset; str brief; struct { struct camu_audio_format fmt; u8 *data; u32 sample_count; char ***drawing; } raw; }; struct cmc_list { str name; s32 current; bool meta_changed; array(struct cmc_list_entry *) entries; }; struct cmc { struct { u8 command; array(str) args; } cli; struct nn_event_loop loop; struct camu_client client; array(struct cmc_list *) lists; struct camu_post_cache cache; array(struct cmc_search *) searches; struct cmc_ui ui; };