/* * xSF - SNSF configuration * By Naram Qashat (CyberBotX) [cyberbotx@cyberbotx.com] * * Partially based on the vio*sf framework */ #pragma once #include #include #include "windowsh_wrapper.h" #include "XSFConfig.h" class wxWindow; class XSFConfigDialog; class XSFPlayer; class XSFConfig_SNSF : public XSFConfig { protected: static constexpr bool initSeparateEchoBuffer = false; static constexpr unsigned initInterpolation = 2; inline static const std::string initMutes = "00000000"; friend class XSFConfig; bool separateEchoBuffer; unsigned interpolation; std::bitset<8> mutes; XSFConfig_SNSF(); void LoadSpecificConfig() override; void SaveSpecificConfig() override; void InitializeSpecificConfigDialog(XSFConfigDialog *dialog) override; void ResetSpecificConfigDefaults(XSFConfigDialog *dialog) override; void SaveSpecificConfigDialog(XSFConfigDialog *dialog) override; void CopySpecificConfigToMemory(XSFPlayer *xSFPlayer, bool preLoad) override; public: void About(HWND parent) override; XSFConfigDialog *CreateDialogBox(wxWindow *window, const std::string &title) override; };