30 lines
819 B
C
30 lines
819 B
C
|
|
//
|
||
|
|
// Created by xtkuang on 2025/5/8.
|
||
|
|
//
|
||
|
|
|
||
|
|
#ifndef CMVR_ES_ABSTRACT_MICROPHONE_H
|
||
|
|
#define CMVR_ES_ABSTRACT_MICROPHONE_H
|
||
|
|
#pragma once
|
||
|
|
|
||
|
|
#include "abstract_device.h"
|
||
|
|
|
||
|
|
namespace cmvr::device{
|
||
|
|
class AbstractMicrophone: public AbstractDevice {
|
||
|
|
public:
|
||
|
|
explicit AbstractMicrophone(const XmlNode &config): AbstractDevice(config) {}
|
||
|
|
~AbstractMicrophone() override = default;
|
||
|
|
|
||
|
|
virtual void getState(MicrophoneState &state) {}
|
||
|
|
virtual void startRecording(const std::string& outputFilePath) {}
|
||
|
|
virtual void stopRecording() {}
|
||
|
|
virtual void pause() {}
|
||
|
|
virtual void resume() {}
|
||
|
|
virtual void setVolume(const int volume) {}
|
||
|
|
virtual int getVolume() {return 0;}
|
||
|
|
|
||
|
|
protected:
|
||
|
|
MicrophoneState state_{};
|
||
|
|
};
|
||
|
|
}
|
||
|
|
|
||
|
|
#endif //CMVR_ES_ABSTRACT_MICROPHONE_H
|