yaze 0.3.2
Link to the Past ROM Editor
 
Loading...
Searching...
No Matches
yaze::gfx::BackgroundBuffer Class Reference

#include <background_buffer.h>

Collaboration diagram for yaze::gfx::BackgroundBuffer:

Public Member Functions

 BackgroundBuffer (int width=512, int height=512)
 
void SetTileAt (int x, int y, uint16_t value)
 
uint16_t GetTileAt (int x, int y) const
 
void ClearBuffer ()
 
void DrawTile (const TileInfo &tile_info, uint8_t *canvas, const uint8_t *tiledata, int indexoffset)
 
void DrawBackground (std::span< uint8_t > gfx16_data)
 
void DrawFloor (const std::vector< uint8_t > &rom_data, int tile_address, int tile_address_floor, uint8_t floor_graphics)
 
void EnsureBitmapInitialized ()
 
void ClearPriorityBuffer ()
 
uint8_t GetPriorityAt (int x, int y) const
 
void SetPriorityAt (int x, int y, uint8_t priority)
 
const std::vector< uint8_t > & priority_data () const
 
std::vector< uint8_t > & mutable_priority_data ()
 
auto buffer ()
 
auto & bitmap ()
 
const gfx::Bitmapbitmap () const
 

Private Attributes

std::vector< uint16_t > buffer_
 
std::vector< uint8_t > priority_buffer_
 
gfx::Bitmap bitmap_
 
int width_
 
int height_
 

Detailed Description

Definition at line 13 of file background_buffer.h.

Constructor & Destructor Documentation

◆ BackgroundBuffer()

yaze::gfx::BackgroundBuffer::BackgroundBuffer ( int width = 512,
int height = 512 )

Definition at line 13 of file background_buffer.cc.

References buffer_, and priority_buffer_.

Member Function Documentation

◆ SetTileAt()

void yaze::gfx::BackgroundBuffer::SetTileAt ( int x,
int y,
uint16_t value )

Definition at line 25 of file background_buffer.cc.

References buffer_, height_, and width_.

Referenced by DrawFloor(), and yaze::zelda3::DrawRoutineUtils::WriteTile8().

◆ GetTileAt()

uint16_t yaze::gfx::BackgroundBuffer::GetTileAt ( int x,
int y ) const

Definition at line 37 of file background_buffer.cc.

References buffer_, height_, and width_.

Referenced by yaze::zelda3::ObjectGeometry::MeasureRoutine().

◆ ClearBuffer()

void yaze::gfx::BackgroundBuffer::ClearBuffer ( )

Definition at line 46 of file background_buffer.cc.

References buffer_, and ClearPriorityBuffer().

Referenced by yaze::editor::ObjectEditorPanel::OpenStaticObjectEditor(), and yaze::gui::DungeonObjectEmulatorPreview::TriggerStaticRender().

Here is the call graph for this function:

◆ DrawTile()

void yaze::gfx::BackgroundBuffer::DrawTile ( const TileInfo & tile_info,
uint8_t * canvas,
const uint8_t * tiledata,
int indexoffset )

◆ DrawBackground()

◆ DrawFloor()

void yaze::gfx::BackgroundBuffer::DrawFloor ( const std::vector< uint8_t > & rom_data,
int tile_address,
int tile_address_floor,
uint8_t floor_graphics )

◆ EnsureBitmapInitialized()

◆ ClearPriorityBuffer()

void yaze::gfx::BackgroundBuffer::ClearPriorityBuffer ( )

Definition at line 51 of file background_buffer.cc.

References priority_buffer_.

Referenced by ClearBuffer(), and yaze::zelda3::Room::RenderObjectsToBackground().

◆ GetPriorityAt()

uint8_t yaze::gfx::BackgroundBuffer::GetPriorityAt ( int x,
int y ) const

Definition at line 56 of file background_buffer.cc.

References height_, priority_buffer_, and width_.

◆ SetPriorityAt()

void yaze::gfx::BackgroundBuffer::SetPriorityAt ( int x,
int y,
uint8_t priority )

Definition at line 63 of file background_buffer.cc.

References height_, priority_buffer_, and width_.

◆ priority_data()

const std::vector< uint8_t > & yaze::gfx::BackgroundBuffer::priority_data ( ) const
inline

Definition at line 40 of file background_buffer.h.

References priority_buffer_.

◆ mutable_priority_data()

std::vector< uint8_t > & yaze::gfx::BackgroundBuffer::mutable_priority_data ( )
inline

◆ buffer()

auto yaze::gfx::BackgroundBuffer::buffer ( )
inline

Definition at line 44 of file background_buffer.h.

References buffer_.

◆ bitmap() [1/2]

◆ bitmap() [2/2]

const gfx::Bitmap & yaze::gfx::BackgroundBuffer::bitmap ( ) const
inline

Definition at line 46 of file background_buffer.h.

References bitmap_.

Member Data Documentation

◆ buffer_

std::vector<uint16_t> yaze::gfx::BackgroundBuffer::buffer_
private

◆ priority_buffer_

std::vector<uint8_t> yaze::gfx::BackgroundBuffer::priority_buffer_
private

◆ bitmap_

gfx::Bitmap yaze::gfx::BackgroundBuffer::bitmap_
private

◆ width_

int yaze::gfx::BackgroundBuffer::width_
private

◆ height_

int yaze::gfx::BackgroundBuffer::height_
private

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