config/Param: split block-specific attributes to new struct ConfigBlock
The old struct config_param remains only for top-level string options.
This commit is contained in:
@@ -24,7 +24,7 @@
|
||||
#include "filter/FilterInternal.hxx"
|
||||
#include "filter/FilterRegistry.hxx"
|
||||
#include "AudioFormat.hxx"
|
||||
#include "config/Param.hxx"
|
||||
#include "config/Block.hxx"
|
||||
#include "util/ConstBuffer.hxx"
|
||||
|
||||
#include <assert.h>
|
||||
@@ -70,7 +70,7 @@ AutoConvertFilter::Open(AudioFormat &in_audio_format, Error &error)
|
||||
if (in_audio_format != child_audio_format) {
|
||||
/* yes - create a convert_filter */
|
||||
|
||||
const config_param empty;
|
||||
const ConfigBlock empty;
|
||||
convert = filter_new(&convert_filter_plugin, empty, error);
|
||||
if (convert == nullptr) {
|
||||
filter->Close();
|
||||
|
@@ -70,7 +70,7 @@ private:
|
||||
static constexpr Domain chain_filter_domain("chain_filter");
|
||||
|
||||
static Filter *
|
||||
chain_filter_init(gcc_unused const config_param ¶m,
|
||||
chain_filter_init(gcc_unused const ConfigBlock &block,
|
||||
gcc_unused Error &error)
|
||||
{
|
||||
return new ChainFilter();
|
||||
|
@@ -59,7 +59,7 @@ public:
|
||||
};
|
||||
|
||||
static Filter *
|
||||
convert_filter_init(gcc_unused const config_param ¶m,
|
||||
convert_filter_init(gcc_unused const ConfigBlock &block,
|
||||
gcc_unused Error &error)
|
||||
{
|
||||
return new ConvertFilter();
|
||||
|
@@ -42,7 +42,7 @@ public:
|
||||
};
|
||||
|
||||
static Filter *
|
||||
normalize_filter_init(gcc_unused const config_param ¶m,
|
||||
normalize_filter_init(gcc_unused const ConfigBlock &block,
|
||||
gcc_unused Error &error)
|
||||
{
|
||||
return new NormalizeFilter();
|
||||
|
@@ -48,7 +48,7 @@ public:
|
||||
};
|
||||
|
||||
static Filter *
|
||||
null_filter_init(gcc_unused const config_param ¶m,
|
||||
null_filter_init(gcc_unused const ConfigBlock &block,
|
||||
gcc_unused Error &error)
|
||||
{
|
||||
return new NullFilter();
|
||||
|
@@ -150,7 +150,7 @@ ReplayGainFilter::Update()
|
||||
}
|
||||
|
||||
static Filter *
|
||||
replay_gain_filter_init(gcc_unused const config_param ¶m,
|
||||
replay_gain_filter_init(gcc_unused const ConfigBlock &block,
|
||||
gcc_unused Error &error)
|
||||
{
|
||||
return new ReplayGainFilter();
|
||||
|
@@ -41,7 +41,7 @@
|
||||
|
||||
#include "config.h"
|
||||
#include "config/ConfigError.hxx"
|
||||
#include "config/Param.hxx"
|
||||
#include "config/Block.hxx"
|
||||
#include "AudioFormat.hxx"
|
||||
#include "filter/FilterPlugin.hxx"
|
||||
#include "filter/FilterInternal.hxx"
|
||||
@@ -114,11 +114,11 @@ public:
|
||||
* a>b, c>d, e>f, ...
|
||||
* where a... are non-unique, non-negative integers
|
||||
* and input channel a gets copied to output channel b, etc.
|
||||
* @param param the configuration block to read
|
||||
* @param block the configuration block to read
|
||||
* @param filter a route_filter whose min_channels and sources[] to set
|
||||
* @return true on success, false on error
|
||||
*/
|
||||
bool Configure(const config_param ¶m, Error &error);
|
||||
bool Configure(const ConfigBlock &block, Error &error);
|
||||
|
||||
/* virtual methods from class Filter */
|
||||
AudioFormat Open(AudioFormat &af, Error &error) override;
|
||||
@@ -128,7 +128,7 @@ public:
|
||||
};
|
||||
|
||||
bool
|
||||
RouteFilter::Configure(const config_param ¶m, Error &error) {
|
||||
RouteFilter::Configure(const ConfigBlock &block, Error &error) {
|
||||
|
||||
/* TODO:
|
||||
* With a more clever way of marking "don't copy to output N",
|
||||
@@ -142,7 +142,7 @@ RouteFilter::Configure(const config_param ¶m, Error &error) {
|
||||
min_output_channels = 0;
|
||||
|
||||
// A cowardly default, just passthrough stereo
|
||||
const char *routes = param.GetBlockValue("routes", "0>0, 1>1");
|
||||
const char *routes = block.GetBlockValue("routes", "0>0, 1>1");
|
||||
while (true) {
|
||||
routes = StripLeft(routes);
|
||||
|
||||
@@ -205,10 +205,10 @@ RouteFilter::Configure(const config_param ¶m, Error &error) {
|
||||
}
|
||||
|
||||
static Filter *
|
||||
route_filter_init(const config_param ¶m, Error &error)
|
||||
route_filter_init(const ConfigBlock &block, Error &error)
|
||||
{
|
||||
RouteFilter *filter = new RouteFilter();
|
||||
if (!filter->Configure(param, error)) {
|
||||
if (!filter->Configure(block, error)) {
|
||||
delete filter;
|
||||
return nullptr;
|
||||
}
|
||||
|
@@ -53,7 +53,7 @@ public:
|
||||
static constexpr Domain volume_domain("pcm_volume");
|
||||
|
||||
static Filter *
|
||||
volume_filter_init(gcc_unused const config_param ¶m,
|
||||
volume_filter_init(gcc_unused const ConfigBlock &block,
|
||||
gcc_unused Error &error)
|
||||
{
|
||||
return new VolumeFilter();
|
||||
|
Reference in New Issue
Block a user