Overte C++ Documentation
InjectedAudioStream.h
1 //
2 // InjectedAudioStream.h
3 // libraries/audio/src
4 //
5 // Created by Stephen Birarda on 6/5/13.
6 // Copyright 2013 High Fidelity, Inc.
7 //
8 // Distributed under the Apache License, Version 2.0.
9 // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
10 //
11 
12 #ifndef hifi_InjectedAudioStream_h
13 #define hifi_InjectedAudioStream_h
14 
15 #include <QtCore/QUuid>
16 
17 #include "PositionalAudioStream.h"
18 
19 using LoopbackFlag = uchar;
20 
21 class InjectedAudioStream : public PositionalAudioStream {
22 public:
23  InjectedAudioStream(const QUuid& streamIdentifier, bool isStereo, int numStaticJitterFrames = -1);
24 
25  float getRadius() const { return _radius; }
26  float getAttenuationRatio() const { return _attenuationRatio; }
27 
28  virtual const QUuid& getStreamIdentifier() const override { return _streamIdentifier; }
29 
30 private:
31  Q_DISABLE_COPY(InjectedAudioStream)
32 
33  AudioStreamStats getAudioStreamStats() const override;
34  int parseStreamProperties(PacketType type, const QByteArray& packetAfterSeqNum, int& numAudioSamples) override;
35 
36  const QUuid _streamIdentifier;
37  float _radius;
38  float _attenuationRatio;
39 };
40 
41 #endif // hifi_InjectedAudioStream_h