Mesen-X/Core/VideoDecoder.h
2015-07-23 23:16:31 -04:00

24 lines
No EOL
500 B
C++

#pragma once
#include "stdafx.h"
#include "../Utilities/SimpleLock.h"
#include "EmulationSettings.h"
class VideoDecoder
{
private:
static unique_ptr<VideoDecoder> Instance;
OverscanDimensions _overscan;
uint32_t* _frameBuffer = nullptr;
SimpleLock _frameLock;
uint32_t ProcessIntensifyBits(uint16_t ppuPixel);
void UpdateBufferSize();
public:
static VideoDecoder* GetInstance();
~VideoDecoder();
uint32_t* DecodeFrame(uint16_t* inputBuffer);
void TakeScreenshot(string romFilename);
};