Sha256: 6a49d387629a82e5ff48a3a635fb01e466235533f9320afdffe38d148e9d2ccd

Contents?: true

Size: 857 Bytes

Versions: 8

Compression:

Stored size: 857 Bytes

Contents

#pragma once

#include <Gosu/IO.hpp>

#ifdef GOSU_IS_MAC
// Ignore OpenAL deprecation warnings. If macOS stops shipping OpenAL, it's more likely that we bundle our own version
// of it than that we switch to another audio API.
#define OPENAL_DEPRECATED
#include <OpenAL/al.h>
#else
#include <AL/al.h>
#endif

#include <cstddef>
#include <string>
#include <vector>

namespace Gosu
{
    class AudioFile
    {
        struct Impl;
        std::unique_ptr<Impl> pimpl;
        
    public:
        explicit AudioFile(const std::string& filename);
        explicit AudioFile(Reader reader);
        ~AudioFile();

        ALenum format() const;
        
        ALuint sample_rate() const;
        
        std::size_t read_data(void* dest, std::size_t length);
        
        void rewind();
        
        const std::vector<char>& decoded_data();
    };
}

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
gosu-1.3.0 src/AudioFile.hpp
gosu-1.2.0 src/AudioFile.hpp
gosu-1.1.1.1 src/AudioFile.hpp
gosu-1.1.0 src/AudioFile.hpp
gosu-1.1.0.pre2 src/AudioFile.hpp
gosu-1.1.0.pre1 src/AudioFile.hpp
gosu-1.0.0 src/AudioFile.hpp
gosu-1.0.0.pre2 src/AudioFile.hpp