Mema
Memory Matrix — multi-channel audio matrix monitor and router
Loading...
Searching...
No Matches
AbstractProcessorData.h
Go to the documentation of this file.
1/* Copyright (c) 2024-2025, Christian Ahrens
2 *
3 * This file is part of Mema <https://github.com/ChristianAhrens/Mema>
4 *
5 * This tool is free software; you can redistribute it and/or modify it under
6 * the terms of the GNU Lesser General Public License version 3.0 as published
7 * by the Free Software Foundation.
8 *
9 * This tool is distributed in the hope that it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
11 * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
12 * details.
13 *
14 * You should have received a copy of the GNU Lesser General Public License
15 * along with this tool; if not, write to the Free Software Foundation, Inc.,
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
17 */
18
19#pragma once
20
21#include <JuceHeader.h>
22
23namespace Mema
24{
25
30{
31public:
40
42 virtual ~AbstractProcessorData();
43
46
48 virtual void SetChannelCount(unsigned long count) = 0;
50 virtual unsigned long GetChannelCount() = 0;
51
52protected:
54};
55
56}
Base class for all data objects exchanged between the audio processor and its analyzers/visualisers.
Type
Identifies the concrete payload type carried by this data object.
@ Invalid
Uninitialised or unknown data.
@ AudioSignal
Raw audio buffer data.
@ Level
Peak/RMS/hold level metering data.
@ Spectrum
FFT frequency-spectrum data.
virtual unsigned long GetChannelCount()=0
Returns the number of audio channels this data object covers.
Type GetDataType()
Returns the concrete type of this data object.
virtual void SetChannelCount(unsigned long count)=0
Sets the number of audio channels this data object covers.
Definition Mema.cpp:27