summaryrefslogtreecommitdiff
path: root/audio/Acx/Samples/Common/SimPeakMeter.h
diff options
context:
space:
mode:
authorJulia D'Zmura <[email protected]>2023-03-07 11:32:48 -0800
committerGitHub <[email protected]>2023-03-07 11:32:48 -0800
commit7d5c202eddde517fe5546452d83c36cf42381f8a (patch)
treeb4b0e8ce2b5efb2a06f2a981fccc3518e02edb47 /audio/Acx/Samples/Common/SimPeakMeter.h
parente802b80eaf6b0e949b6fbcecac633da37a71ced7 (diff)
Adding the AudioCodec ACX sample driver to Github. (#882)
* Adding the AudioCodec acx sample driver to Github. * Fix to make AudioCodec driver all build in one solution file. Builds in ARM64 now.
Diffstat (limited to 'audio/Acx/Samples/Common/SimPeakMeter.h')
-rw-r--r--audio/Acx/Samples/Common/SimPeakMeter.h51
1 files changed, 51 insertions, 0 deletions
diff --git a/audio/Acx/Samples/Common/SimPeakMeter.h b/audio/Acx/Samples/Common/SimPeakMeter.h
new file mode 100644
index 00000000..7203f299
--- /dev/null
+++ b/audio/Acx/Samples/Common/SimPeakMeter.h
@@ -0,0 +1,51 @@
+/*++
+
+ THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
+ KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR
+ PURPOSE.
+
+Module Name:
+
+ SimPeakMeter.h
+
+Abstract:
+
+ Virtual Peakmeter - aggregates all streams
+
+Environment:
+
+ Kernel mode
+
+--*/
+
+#pragma once
+
+class CSimPeakMeter
+{
+public:
+ __drv_maxIRQL(PASSIVE_LEVEL)
+ PAGED_CODE_SEG
+ CSimPeakMeter();
+
+ __drv_maxIRQL(PASSIVE_LEVEL)
+ PAGED_CODE_SEG
+ ~CSimPeakMeter();
+
+ __drv_maxIRQL(PASSIVE_LEVEL)
+ PAGED_CODE_SEG
+ LONG GetValue(_In_ ULONG Channel);
+
+ __drv_maxIRQL(PASSIVE_LEVEL)
+ PAGED_CODE_SEG
+ NTSTATUS StartStream();
+
+ __drv_maxIRQL(PASSIVE_LEVEL)
+ PAGED_CODE_SEG
+ NTSTATUS StopStream();
+
+private:
+ LONG m_NumStreams;
+ LONG m_PeakMeterIndex;
+};
+