GCC Code Coverage Report
Directory: src/ Exec Total Coverage
File: src/utils/sdl2musichelper.cpp Lines: 0 5 0.0 %
Date: 2019-08-19 Branches: 0 0 0.0 %

Line Branch Exec Source
1
/*
2
 *  The ManaPlus Client
3
 *  Copyright (C) 2013-2019  The ManaPlus Developers
4
 *
5
 *  This file is part of The ManaPlus Client.
6
 *
7
 *  This program is free software; you can redistribute it and/or modify
8
 *  it under the terms of the GNU General Public License as published by
9
 *  the Free Software Foundation; either version 2 of the License, or
10
 *  any later version.
11
 *
12
 *  This program is distributed in the hope that it will be useful,
13
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
14
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15
 *  GNU General Public License for more details.
16
 *
17
 *  You should have received a copy of the GNU General Public License
18
 *  along with this program.  If not, see <http://www.gnu.org/licenses/>.
19
 */
20
21
#ifdef USE_SDL2
22
23
#include "utils/sdl2musichelper.h"
24
25
#include "debug.h"
26
27
#ifndef SDL_MIXER_COMPILEDVERSION
28
#define SDL_MIXER_COMPILEDVERSION \
29
    SDL_VERSIONNUM(SDL_MIXER_MAJOR_VERSION, \
30
    SDL_MIXER_MINOR_VERSION, SDL_MIXER_PATCHLEVEL)
31
#endif  // SDL_MIXER_COMPILEDVERSION
32
#ifndef SDL_MIXER_VERSION_ATLEAST
33
#define SDL_MIXER_VERSION_ATLEAST(X, Y, Z) \
34
    (SDL_MIXER_COMPILEDVERSION >= SDL_VERSIONNUM(X, Y, Z))
35
#endif  // SDL_MIXER_VERSION_ATLEAST
36
37
int SDL::MixOpenAudio(const int frequency,
38
                      const uint16_t format,
39
                      const int nchannels,
40
                      const int chunksize)
41
{
42
#if SDL_MIXER_VERSION_ATLEAST(2, 0, 2)
43
    return Mix_OpenAudioDevice(frequency,
44
        format,
45
        nchannels,
46
        chunksize,
47
        nullptr,
48
        SDL_AUDIO_ALLOW_FREQUENCY_CHANGE | SDL_AUDIO_ALLOW_CHANNELS_CHANGE);
49
#else  // SDL_MIXER_VERSION_ATLEAST(2, 0, 2)
50
51
    return Mix_OpenAudio(frequency,
52
        format,
53
        nchannels,
54
        chunksize);
55
#endif  // SDL_MIXER_VERSION_ATLEAST(2, 0, 2)
56
}
57
58
Mix_Music *SDL::LoadMUSOgg_RW(SDL_RWops *const rw)
59
{
60
    return Mix_LoadMUSType_RW(rw, MUS_OGG, 1);
61
}
62
63
#endif  // USE_SDL2