#pragma once
#pragma once
#include "IDevice.hpp"
#include "IDeviceSyncConfigurator.hpp"
#include "DeviceComponentBase.hpp"
#include <vector>
#include <memory>
#include <map>
namespace libobsensor {
class PlaybackDeviceSyncConfigurator : public IDeviceSyncConfigurator, public DeviceComponentBase {
public:
PlaybackDeviceSyncConfigurator(IDevice *owner);
virtual ~PlaybackDeviceSyncConfigurator() override = default;
OBMultiDeviceSyncConfig getSyncConfig() override;
void setSyncConfig(const OBMultiDeviceSyncConfig &deviceSyncConfig) override;
uint16_t getSupportedSyncModeBitmap() override;
void triggerCapture() override;
private:
std::atomic<bool> isSyncConfigInit_;
OBMultiDeviceSyncConfig currentMultiDevSyncConfig_;
};
}