|
|
@ -0,0 +1,27 @@ |
|
|
|
|
|
// Copyright 2016 Citra Emulator Project |
|
|
|
|
|
// Licensed under GPLv2 or any later version |
|
|
|
|
|
// Refer to the license.txt file included. |
|
|
|
|
|
|
|
|
|
|
|
#pragma once |
|
|
|
|
|
|
|
|
|
|
|
#include <functional> |
|
|
|
|
|
#include <memory> |
|
|
|
|
|
#include <vector> |
|
|
|
|
|
|
|
|
|
|
|
namespace AudioCore { |
|
|
|
|
|
|
|
|
|
|
|
class Sink; |
|
|
|
|
|
|
|
|
|
|
|
struct SinkDetails { |
|
|
|
|
|
SinkDetails(const char* id_, std::function<std::unique_ptr<Sink>()> factory_) |
|
|
|
|
|
: id(id_), factory(factory_) {} |
|
|
|
|
|
|
|
|
|
|
|
/// Name for this sink. |
|
|
|
|
|
const char* id; |
|
|
|
|
|
/// A method to call to construct an instance of this type of sink. |
|
|
|
|
|
std::function<std::unique_ptr<Sink>()> factory; |
|
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
extern const std::vector<SinkDetails> g_sink_details; |
|
|
|
|
|
|
|
|
|
|
|
} // namespace AudioCore |