From cc6f1020d01a6f8f814a6a6a211a00d490459f66 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Thu, 22 May 2014 11:24:40 +0200 Subject: test/run_decoder: merge code into FakeDecoderAPI.cxx Eliminate duplicate code. --- test/FakeDecoderAPI.cxx | 17 ++++-- test/FakeDecoderAPI.hxx | 32 ++++++++++++ test/run_decoder.cxx | 136 +----------------------------------------------- 3 files changed, 48 insertions(+), 137 deletions(-) create mode 100644 test/FakeDecoderAPI.hxx (limited to 'test') diff --git a/test/FakeDecoderAPI.cxx b/test/FakeDecoderAPI.cxx index 4dfc545ee..155e7d5df 100644 --- a/test/FakeDecoderAPI.cxx +++ b/test/FakeDecoderAPI.cxx @@ -18,6 +18,7 @@ */ #include "config.h" +#include "FakeDecoderAPI.hxx" #include "decoder/DecoderAPI.hxx" #include "input/InputStream.hxx" #include "util/Error.hxx" @@ -26,11 +27,21 @@ #include void -decoder_initialized(gcc_unused Decoder &decoder, - gcc_unused const AudioFormat audio_format, +decoder_initialized(Decoder &decoder, + const AudioFormat audio_format, gcc_unused bool seekable, - gcc_unused float total_time) + float duration) { + struct audio_format_string af_string; + + assert(!decoder.initialized); + assert(audio_format.IsValid()); + + fprintf(stderr, "audio_format=%s duration=%f\n", + audio_format_to_string(audio_format, &af_string), + duration); + + decoder.initialized = true; } DecoderCommand diff --git a/test/FakeDecoderAPI.hxx b/test/FakeDecoderAPI.hxx new file mode 100644 index 000000000..134e77117 --- /dev/null +++ b/test/FakeDecoderAPI.hxx @@ -0,0 +1,32 @@ +/* + * Copyright (C) 2003-2014 The Music Player Daemon Project + * http://www.musicpd.org + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +#ifndef FAKE_DECODER_API_HXX +#define FAKE_DECODER_API_HXX + +#include "check.h" + +struct Decoder { + bool initialized; + + Decoder() + :initialized(false) {} +}; + +#endif diff --git a/test/run_decoder.cxx b/test/run_decoder.cxx index f33509211..b1c739405 100644 --- a/test/run_decoder.cxx +++ b/test/run_decoder.cxx @@ -20,7 +20,8 @@ #include "config.h" #include "IOThread.hxx" #include "decoder/DecoderList.hxx" -#include "decoder/DecoderAPI.hxx" +#include "decoder/DecoderPlugin.hxx" +#include "FakeDecoderAPI.hxx" #include "input/Init.hxx" #include "input/InputStream.hxx" #include "fs/Path.hxx" @@ -39,139 +40,6 @@ #include #include -struct Decoder { - bool initialized; - - Decoder() - :initialized(false) {} -}; - -void -decoder_initialized(Decoder &decoder, - const AudioFormat audio_format, - gcc_unused bool seekable, - float duration) -{ - struct audio_format_string af_string; - - assert(!decoder.initialized); - assert(audio_format.IsValid()); - - fprintf(stderr, "audio_format=%s duration=%f\n", - audio_format_to_string(audio_format, &af_string), - duration); - - decoder.initialized = true; -} - -DecoderCommand -decoder_get_command(gcc_unused Decoder &decoder) -{ - return DecoderCommand::NONE; -} - -void -decoder_command_finished(gcc_unused Decoder &decoder) -{ -} - -double -decoder_seek_where(gcc_unused Decoder &decoder) -{ - return 1.0; -} - -void -decoder_seek_error(gcc_unused Decoder &decoder) -{ -} - -size_t -decoder_read(gcc_unused Decoder *decoder, - InputStream &is, - void *buffer, size_t length) -{ - return is.LockRead(buffer, length, IgnoreError()); -} - -bool -decoder_read_full(Decoder *decoder, InputStream &is, - void *_buffer, size_t size) -{ - uint8_t *buffer = (uint8_t *)_buffer; - - while (size > 0) { - size_t nbytes = decoder_read(decoder, is, buffer, size); - if (nbytes == 0) - return false; - - buffer += nbytes; - size -= nbytes; - } - - return true; -} - -bool -decoder_skip(Decoder *decoder, InputStream &is, size_t size) -{ - while (size > 0) { - char buffer[1024]; - size_t nbytes = decoder_read(decoder, is, buffer, - std::min(sizeof(buffer), size)); - if (nbytes == 0) - return false; - - size -= nbytes; - } - - return true; -} - -void -decoder_timestamp(gcc_unused Decoder &decoder, - gcc_unused double t) -{ -} - -DecoderCommand -decoder_data(gcc_unused Decoder &decoder, - gcc_unused InputStream *is, - const void *data, size_t datalen, - gcc_unused uint16_t kbit_rate) -{ - gcc_unused ssize_t nbytes = write(1, data, datalen); - return DecoderCommand::NONE; -} - -DecoderCommand -decoder_tag(gcc_unused Decoder &decoder, - gcc_unused InputStream *is, - gcc_unused Tag &&tag) -{ - return DecoderCommand::NONE; -} - -void -decoder_replay_gain(gcc_unused Decoder &decoder, - const ReplayGainInfo *rgi) -{ - const ReplayGainTuple *tuple = &rgi->tuples[REPLAY_GAIN_ALBUM]; - if (tuple->IsDefined()) - fprintf(stderr, "replay_gain[album]: gain=%f peak=%f\n", - tuple->gain, tuple->peak); - - tuple = &rgi->tuples[REPLAY_GAIN_TRACK]; - if (tuple->IsDefined()) - fprintf(stderr, "replay_gain[track]: gain=%f peak=%f\n", - tuple->gain, tuple->peak); -} - -void -decoder_mixramp(gcc_unused Decoder &decoder, gcc_unused MixRampInfo &&mix_ramp) -{ -} - int main(int argc, char **argv) { if (argc != 3) { -- cgit v1.2.3