AUI Framework  master
Cross-platform base for C++ UI apps
Loading...
Searching...
No Matches
ARawSoundStream.h
    1/*
    2 * AUI Framework - Declarative UI toolkit for modern C++20
    3 * Copyright (C) 2020-2025 Alex2772 and Contributors
    4 *
    5 * SPDX-License-Identifier: MPL-2.0
    6 *
    7 * This Source Code Form is subject to the terms of the Mozilla Public
    8 * License, v. 2.0. If a copy of the MPL was not distributed with this
    9 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
   10 */
   11
   12#pragma once
   13
   14#include "AUI/Audio/ISoundInputStream.h"
   15
   20class ARawSoundStream : public ISoundInputStream {
   21public:
   22    ARawSoundStream(AAudioFormat format, _<IInputStream>);
   23
   24    size_t read(char* dst, size_t size) override;
   25
   26    AAudioFormat info() override;
   27
   28private:
   29    AAudioFormat mFormat;
   30    _<IInputStream> mStream;
   31};
size_t read(char *dst, size_t size) override
Reads up to size bytes from stream. Blocking (waiting for new data) is allowed.
AAudioFormat info() override
Get general info about sound stream.
Base interface for representing sound input streams of different formats.
Definition ISoundInputStream.h:15
An std::weak_ptr with AUI extensions.
Definition SharedPtrTypes.h:179
Audio format descriptor.
Definition AAudioFormat.h:13