1#ifndef YAZE_APP_EDITOR_DUNGEON_WORKSPACE_ROOM_MATRIX_CENSUS_H_
2#define YAZE_APP_EDITOR_DUNGEON_WORKSPACE_ROOM_MATRIX_CENSUS_H_
11#include "absl/status/statusor.h"
12#include "imgui/imgui.h"
93 static ImVec4
OwnerColor(
int owner_index,
bool interior);
100 bool DrawChip(
const char*
id,
const std::string& label, ImVec4 swatch,
101 bool outline_only,
bool active,
bool first);
112 std::future<absl::StatusOr<zelda3::RoomCensus>>
pending_;
The Rom class is used to load, save, and modify Rom data. This is a generic SNES ROM container and do...
Loads and queries the hack manifest JSON for yaze-ASM integration.
"Census" overlay for the Room Matrix.
bool observed_custom_enabled_
~RoomMatrixCensusOverlay()
void SetFilterFree(bool on)
std::set< int > largest_block_
const Rom * computed_for_
static void WrapBeforeItem(float item_width, bool first)
friend class RoomMatrixCensusTestPeer
ManifestProvider manifest_provider_
bool InLargestFreeBlock(int room_id) const
void SetEnabled(bool enabled)
void ToggleOwnerFilter(int owner_index)
bool MatchesChips(int room_id) const
void SetFilterReclaimable(bool on)
bool DrawChip(const char *id, const std::string &label, ImVec4 swatch, bool outline_only, bool active, bool first)
const zelda3::RoomCensus * census() const
std::function< const core::HackManifest *()> ManifestProvider
void DrawControls(Rom *rom)
std::optional< ImU32 > StatusOutline(int room_id) const
RoomMatrixCensusOverlay()
util::StopSource stop_source_
void StartComputation(Rom *rom)
uint64_t observed_rom_revision_
static ImU32 BlockHaloColor(float alpha)
uint64_t observed_asset_generation_
void SetManifestProvider(ManifestProvider provider)
bool IsOrphan(int room_id) const
void DrawTooltip(int room_id) const
std::set< int > filter_owners_
ImU32 FillColor(int room_id) const
bool HasActiveChips() const
std::future< absl::StatusOr< zelda3::RoomCensus > > pending_
static ImVec4 OwnerColor(int owner_index, bool interior)
std::optional< zelda3::RoomCensus > census_
static ImU32 OrphanMarkColor()
bool request_stop() noexcept
constexpr NoStopStateTag kNoStopState