overte/libraries/audio/src/AbstractAudioInterface.h
2014-11-07 10:08:09 -08:00

32 lines
1,012 B
C++

//
// AbstractAudioInterface.h
// libraries/audio/src
//
// Created by Brad Hefta-Gaub on 12/4/13.
// Copyright 2013 High Fidelity, Inc.
//
// Distributed under the Apache License, Version 2.0.
// See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
//
#ifndef hifi_AbstractAudioInterface_h
#define hifi_AbstractAudioInterface_h
#include <QtCore/QObject>
#include "AudioInjectorOptions.h"
class AbstractAudioInterface : public QObject {
Q_OBJECT
public:
AbstractAudioInterface(QObject* parent = 0) : QObject(parent) {};
virtual void startCollisionSound(float magnitude, float frequency, float noise, float duration, bool flashScreen) = 0;
virtual void startDrumSound(float volume, float frequency, float duration, float decay) = 0;
public slots:
virtual void handleAudioByteArray(const QByteArray& audioByteArray, const AudioInjectorOptions& options) = 0;
};
Q_DECLARE_METATYPE(AbstractAudioInterface*)
#endif // hifi_AbstractAudioInterface_h