yaze 0.3.2
Link to the Past ROM Editor
 
Loading...
Searching...
No Matches
yaze::editor::usage_preview::RoomUsagePreview Class Reference

#include <usage_preview.h>

Collaboration diagram for yaze::editor::usage_preview::RoomUsagePreview:

Public Member Functions

absl::Status Render (Rom *rom, zelda3::GameData *game_data, int room_id, const SheetPixels &sheets, bool objects_only, zelda3::Room *live_room=nullptr)
 
const std::vector< RoomTileReference > & tile_references () const
 
size_t unknown_objects () const
 
int room_id () const
 
const gfx::Bitmap & bitmap () const
 
gfx::Bitmap & mutable_bitmap ()
 
PreviewImage Snapshot () const
 
std::array< uint8_t, 16 > blocks () const
 Room graphics blocks (0-7 background, 8-15 sprites) of the loaded room.
 
std::vector< SDL_Rect > ObjectRectsUsingSheet (uint16_t sheet) const
 
std::vector< SDL_Rect > ObjectRectsForObject (size_t index) const
 
absl::Status TraceLoadedRoom (Rom *rom, zelda3::GameData *game_data, zelda3::Room *room)
 
void Reset ()
 Clears the loaded room so the next Render() reloads it from the ROM.
 

Private Member Functions

void CaptureUsage (const zelda3::Room &room)
 

Private Attributes

std::unique_ptr< zelda3::Room > room_
 
std::array< uint8_t, 16 > blocks_ {}
 
std::vector< RoomTileReference > tile_references_
 
std::map< size_t, SDL_Rect > object_rects_
 
size_t unknown_objects_ = 0
 
int room_id_ = -1
 
gfx::Bitmap composite_
 

Detailed Description

Definition at line 118 of file usage_preview.h.

Member Function Documentation

◆ Render()

◆ tile_references()

const std::vector< RoomTileReference > & yaze::editor::usage_preview::RoomUsagePreview::tile_references ( ) const
inline

Definition at line 126 of file usage_preview.h.

References tile_references_.

Referenced by yaze::editor::usage_preview::FindLoadedRoomSourceUses().

◆ unknown_objects()

size_t yaze::editor::usage_preview::RoomUsagePreview::unknown_objects ( ) const
inline

Definition at line 129 of file usage_preview.h.

References unknown_objects_.

Referenced by yaze::editor::usage_preview::FindLoadedRoomSourceUses().

◆ room_id()

int yaze::editor::usage_preview::RoomUsagePreview::room_id ( ) const
inline

Definition at line 131 of file usage_preview.h.

References room_id_.

Referenced by Render().

◆ bitmap()

const gfx::Bitmap & yaze::editor::usage_preview::RoomUsagePreview::bitmap ( ) const
inline

Definition at line 132 of file usage_preview.h.

References composite_.

◆ mutable_bitmap()

gfx::Bitmap & yaze::editor::usage_preview::RoomUsagePreview::mutable_bitmap ( )
inline

Definition at line 133 of file usage_preview.h.

References composite_.

Referenced by yaze::editor::UsagePreviewView::DrawSharedUses().

◆ Snapshot()

PreviewImage yaze::editor::usage_preview::RoomUsagePreview::Snapshot ( ) const
inline

Definition at line 134 of file usage_preview.h.

References composite_, and yaze::editor::usage_preview::SnapshotBitmap().

Here is the call graph for this function:

◆ blocks()

std::array< uint8_t, 16 > yaze::editor::usage_preview::RoomUsagePreview::blocks ( ) const

Room graphics blocks (0-7 background, 8-15 sprites) of the loaded room.

Definition at line 306 of file usage_preview.cc.

References blocks_.

◆ ObjectRectsUsingSheet()

std::vector< SDL_Rect > yaze::editor::usage_preview::RoomUsagePreview::ObjectRectsUsingSheet ( uint16_t sheet) const

Pixel rectangles of objects that draw at least one 8x8 tile from sheet (background blocks only).

Definition at line 356 of file usage_preview.cc.

References object_rects_, and tile_references_.

◆ ObjectRectsForObject()

std::vector< SDL_Rect > yaze::editor::usage_preview::RoomUsagePreview::ObjectRectsForObject ( size_t index) const

Definition at line 367 of file usage_preview.cc.

References object_rects_.

Referenced by yaze::editor::UsagePreviewView::DrawSharedUses().

◆ TraceLoadedRoom()

absl::Status yaze::editor::usage_preview::RoomUsagePreview::TraceLoadedRoom ( Rom * rom,
zelda3::GameData * game_data,
zelda3::Room * room )

◆ Reset()

void yaze::editor::usage_preview::RoomUsagePreview::Reset ( )

◆ CaptureUsage()

Member Data Documentation

◆ room_

std::unique_ptr<zelda3::Room> yaze::editor::usage_preview::RoomUsagePreview::room_
private

Definition at line 151 of file usage_preview.h.

Referenced by Render(), and Reset().

◆ blocks_

std::array<uint8_t, 16> yaze::editor::usage_preview::RoomUsagePreview::blocks_ {}
private

Definition at line 152 of file usage_preview.h.

Referenced by blocks(), CaptureUsage(), and Reset().

◆ tile_references_

std::vector<RoomTileReference> yaze::editor::usage_preview::RoomUsagePreview::tile_references_
private

Definition at line 153 of file usage_preview.h.

Referenced by CaptureUsage(), ObjectRectsUsingSheet(), Reset(), and tile_references().

◆ object_rects_

std::map<size_t, SDL_Rect> yaze::editor::usage_preview::RoomUsagePreview::object_rects_
private

Definition at line 154 of file usage_preview.h.

Referenced by CaptureUsage(), ObjectRectsForObject(), ObjectRectsUsingSheet(), and Reset().

◆ unknown_objects_

size_t yaze::editor::usage_preview::RoomUsagePreview::unknown_objects_ = 0
private

Definition at line 155 of file usage_preview.h.

Referenced by CaptureUsage(), Reset(), and unknown_objects().

◆ room_id_

int yaze::editor::usage_preview::RoomUsagePreview::room_id_ = -1
private

Definition at line 156 of file usage_preview.h.

Referenced by Render(), Reset(), and room_id().

◆ composite_

gfx::Bitmap yaze::editor::usage_preview::RoomUsagePreview::composite_
private

Definition at line 157 of file usage_preview.h.

Referenced by bitmap(), mutable_bitmap(), Render(), and Snapshot().


The documentation for this class was generated from the following files: