Overte C++ Documentation
AudioMixerStats.h
1 //
2 // AudioMixerStats.h
3 // assignment-client/src/audio
4 //
5 // Created by Zach Pomerantz on 11/22/16.
6 // Copyright 2016 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_AudioMixerStats_h
13 #define hifi_AudioMixerStats_h
14 
15 #ifdef HIFI_AUDIO_MIXER_DEBUG
16 #include <cstdint>
17 #endif
18 
19 struct AudioMixerStats {
20  int sumStreams { 0 };
21  int sumListeners { 0 };
22  int sumListenersSilent { 0 };
23 
24  int totalMixes { 0 };
25 
26  int hrtfRenders { 0 };
27  int hrtfResets { 0 };
28  int hrtfUpdates { 0 };
29 
30  int manualStereoMixes { 0 };
31  int manualEchoMixes { 0 };
32 
33  int skippedToActive { 0 };
34  int skippedToInactive { 0 };
35  int inactiveToSkipped { 0 };
36  int inactiveToActive { 0 };
37  int activeToSkipped { 0 };
38  int activeToInactive { 0 };
39 
40  int skipped { 0 };
41  int inactive { 0 };
42  int active { 0 };
43 
44 #ifdef HIFI_AUDIO_MIXER_DEBUG
45  uint64_t mixTime { 0 };
46 #endif
47 
48  void reset();
49  void accumulate(const AudioMixerStats& otherStats);
50 };
51 
52 #endif // hifi_AudioMixerStats_h