ComSquare
RAMTileRenderer.hpp
Go to the documentation of this file.
1 //
2 // Created by cbihan on 24/05/2021.
3 //
4 
5 #pragma once
6 
7 #include <array>
8 #include "PPU/TileRenderer.hpp"
9 #include "Ram/Ram.hpp"
10 
11 namespace ComSquare::Debugger
12 {
14  {
15  private:
25  int _bpp;
28  public:
30  std::array<std::array<uint32_t, 1024>, 1024> buffer;
32  void setPaletteIndex(int paletteIndex);
34  void setBpp(int bpp);
36  void setNbColumns(int nbColumns);
38  void setRenderSize(int size);
40  void setRamOffset(int offset);
42  [[nodiscard]] int getBpp() const;
44  [[nodiscard]] int getPaletteIndex() const;
46  [[nodiscard]] int getNbColumns() const;
48  void render();
49 
51  RAMTileRenderer(Ram::Ram &ram, Ram::Ram &cgram);
53  RAMTileRenderer(const RAMTileRenderer &) = default;
55  ~RAMTileRenderer() = default;
57  RAMTileRenderer &operator=(const RAMTileRenderer &) = delete;
58  };
59 }
60 
ComSquare::Ram::Ram
Definition: Ram.hpp:14
ComSquare::Debugger::RAMTileRenderer::getNbColumns
int getNbColumns() const
Get the numbr of maximum tile columns to render.
Definition: RAMTileRenderer.cpp:89
ComSquare::Debugger::RAMTileRenderer::getBpp
int getBpp() const
Get the current bpp.
Definition: RAMTileRenderer.cpp:79
ComSquare::Debugger::RAMTileRenderer::render
void render()
render the selected ram
Definition: RAMTileRenderer.cpp:21
ComSquare::Debugger::RAMTileRenderer::RAMTileRenderer
RAMTileRenderer(Ram::Ram &ram, Ram::Ram &cgram)
ctor
Definition: RAMTileRenderer.cpp:11
ComSquare::Debugger::RAMTileRenderer
Definition: RAMTileRenderer.hpp:13
ComSquare::Debugger::RAMTileRenderer::getPaletteIndex
int getPaletteIndex() const
Get the index of the current palette used.
Definition: RAMTileRenderer.cpp:84
ComSquare::Debugger
Definition: APUDebug.cpp:11
TileRenderer.hpp
ComSquare::Debugger::RAMTileRenderer::operator=
RAMTileRenderer & operator=(const RAMTileRenderer &)=delete
A RAMTileRender is not assignable.
ComSquare::Debugger::RAMTileRenderer::_ramOffset
int _ramOffset
Bytes to skip from the start of the ram.
Definition: RAMTileRenderer.hpp:23
ComSquare::Debugger::RAMTileRenderer::_nbColumns
int _nbColumns
The number of tile columns to display.
Definition: RAMTileRenderer.hpp:21
ComSquare::Debugger::RAMTileRenderer::setRenderSize
void setRenderSize(int size)
Set the size of ram to render.
Definition: RAMTileRenderer.cpp:69
ComSquare::Debugger::RAMTileRenderer::_tileRenderer
PPU::TileRenderer _tileRenderer
The class tha actually render the tile.
Definition: RAMTileRenderer.hpp:27
ComSquare::Debugger::RAMTileRenderer::setPaletteIndex
void setPaletteIndex(int paletteIndex)
Set the palette to use for render (index of palette)
Definition: RAMTileRenderer.cpp:58
ComSquare::Debugger::RAMTileRenderer::~RAMTileRenderer
~RAMTileRenderer()=default
dtor
ComSquare::Debugger::RAMTileRenderer::_renderSize
int _renderSize
The size to render in the ram.
Definition: RAMTileRenderer.hpp:19
ComSquare::Debugger::RAMTileRenderer::setRamOffset
void setRamOffset(int offset)
Set the ram offset.
Definition: RAMTileRenderer.cpp:94
ComSquare::Debugger::RAMTileRenderer::setBpp
void setBpp(int bpp)
Set the bpp to render graphics.
Definition: RAMTileRenderer.cpp:63
ComSquare::PPU::TileRenderer
Definition: TileRenderer.hpp:12
ComSquare::Debugger::RAMTileRenderer::setNbColumns
void setNbColumns(int nbColumns)
Set the number of maximum columns.
Definition: RAMTileRenderer.cpp:74
ComSquare::Debugger::RAMTileRenderer::_bpp
int _bpp
The actual bpp to render.
Definition: RAMTileRenderer.hpp:25
ComSquare::Debugger::RAMTileRenderer::_ram
Ram::Ram & _ram
ram to render
Definition: RAMTileRenderer.hpp:17
ComSquare::Debugger::RAMTileRenderer::buffer
std::array< std::array< uint32_t, 1024 >, 1024 > buffer
internal buffer
Definition: RAMTileRenderer.hpp:30
Ram.hpp