mirror of https://github.com/bsnes-emu/bsnes.git
92 lines
2.0 KiB
C++
Executable File
92 lines
2.0 KiB
C++
Executable File
class NTSCFilter : public QObject {
|
|
Q_OBJECT
|
|
|
|
public:
|
|
void bind(configuration&);
|
|
void size(unsigned&, unsigned&, unsigned, unsigned);
|
|
void render(uint32_t*, unsigned, const uint16_t*, unsigned, unsigned, unsigned);
|
|
QWidget* settings();
|
|
|
|
NTSCFilter();
|
|
~NTSCFilter();
|
|
|
|
private:
|
|
void initialize();
|
|
void loadSettingsFromConfig();
|
|
void syncUiToSettings();
|
|
|
|
private slots:
|
|
void syncSettingsToUi();
|
|
void setRfPreset();
|
|
void setCompositePreset();
|
|
void setSvideoPreset();
|
|
void setRgbPreset();
|
|
void setMonoPreset();
|
|
|
|
private:
|
|
QWidget *widget;
|
|
QVBoxLayout *layout;
|
|
QGridLayout *gridLayout;
|
|
QLabel *basicSettings;
|
|
QLabel *hueLabel;
|
|
QLabel *hueValue;
|
|
QSlider *hueSlider;
|
|
QLabel *saturationLabel;
|
|
QLabel *saturationValue;
|
|
QSlider *saturationSlider;
|
|
QLabel *contrastLabel;
|
|
QLabel *contrastValue;
|
|
QSlider *contrastSlider;
|
|
QLabel *brightnessLabel;
|
|
QLabel *brightnessValue;
|
|
QSlider *brightnessSlider;
|
|
QLabel *sharpnessLabel;
|
|
QLabel *sharpnessValue;
|
|
QSlider *sharpnessSlider;
|
|
QLabel *advancedSettings;
|
|
QLabel *gammaLabel;
|
|
QLabel *gammaValue;
|
|
QSlider *gammaSlider;
|
|
QLabel *resolutionLabel;
|
|
QLabel *resolutionValue;
|
|
QSlider *resolutionSlider;
|
|
QLabel *artifactsLabel;
|
|
QLabel *artifactsValue;
|
|
QSlider *artifactsSlider;
|
|
QLabel *fringingLabel;
|
|
QLabel *fringingValue;
|
|
QSlider *fringingSlider;
|
|
QLabel *bleedLabel;
|
|
QLabel *bleedValue;
|
|
QSlider *bleedSlider;
|
|
QCheckBox *mergeFieldsBox;
|
|
QLabel *presets;
|
|
QHBoxLayout *controlLayout;
|
|
QPushButton *rfPreset;
|
|
QPushButton *compositePreset;
|
|
QPushButton *svideoPreset;
|
|
QPushButton *rgbPreset;
|
|
QPushButton *monoPreset;
|
|
QWidget *spacer;
|
|
QPushButton *ok;
|
|
|
|
bool blockSignals;
|
|
|
|
struct snes_ntsc_t *ntsc;
|
|
snes_ntsc_setup_t setup;
|
|
int burst, burst_toggle;
|
|
|
|
//settings
|
|
double hue;
|
|
double saturation;
|
|
double contrast;
|
|
double brightness;
|
|
double sharpness;
|
|
double gamma;
|
|
double resolution;
|
|
double artifacts;
|
|
double fringing;
|
|
double bleed;
|
|
bool mergeFields;
|
|
} filter_ntsc;
|