#pragma once #include #include #include #include class AudioDevice { public: IMMDevice* device = nullptr; IAudioEndpointVolume* volumeInterface = nullptr; IAudioMeterInformation* meterInterface = nullptr; std::wstring id = {}; std::string name = {}; unsigned long state = {}; bool isDefaultConsole = {}; bool isDefaultMedia = {}; bool isDefaultCommunication = {}; ~AudioDevice(); }; class ApplicationSettings { public: bool showDisabledDevices = false; bool fitWindowHeight = true; }; class ApplicationData { public: ApplicationSettings settings = {}; std::vector playbackDevices = {}; std::vector recordingDevices = {}; };