diff --git a/SharpPipe/Interfaces/IZitaFilter.cs b/SharpPipe/Interfaces/IZitaFilter.cs
new file mode 100644
index 0000000..e73ebac
--- /dev/null
+++ b/SharpPipe/Interfaces/IZitaFilter.cs
@@ -0,0 +1,62 @@
+namespace SharpPipe;
+
+///
+/// Represents the interface for Zita Reverb objects
+///
+public interface IZitaFilter
+{
+ ///
+ /// The input delay (ms) before reverb is applied to the incoming signal (default: 60ms)
+ ///
+ float InDelay { get; }
+
+ ///
+ /// The separation between 'high' and 'low' frequencies (default: 200hz)
+ ///
+ float Crossover { get; }
+
+ ///
+ /// The time in seconds it takes for low frequencies to decrease by 60dB (default: 3 seconds)
+ ///
+ float RT60Low { get; }
+
+ ///
+ /// The time in seconds it takes for mid frequencies to decrease by 60dB (default: 2 seconds)
+ ///
+ float RT60Mid { get; }
+
+ ///
+ /// Frequencies (hz) above this one are heard half as long as as the mid-range frequencies - e.g. when their T60 is half of the middle-range's T60 (default: 6000hz)
+ ///
+ float HighFrequencyDamping { get; }
+
+ ///
+ /// The center frequency (hz) of the Regalia Mitra peaking equalizer for the first section (default: 315hz)
+ ///
+ float EQ1Frequency { get; }
+
+ ///
+ /// The peak level (dB) of equalizer 1 (default: 0dB)
+ ///
+ float EQ1Level { get; }
+
+ ///
+ /// The center frequency (hz) of the Regalia Mitra peaking equalizer for the second section (default: 1500hz)
+ ///
+ float EQ2Frequency { get; }
+
+ ///
+ /// The peak level (dB) of equalizer 2 (default: 0dB)
+ ///
+ float EQ2Level { get; }
+
+ ///
+ /// Mixes the wet and dry signals - e.g. 0 is no reverb, 1 is only reverb (default: 1)
+ ///
+ float Mix { get; }
+
+ ///
+ /// The factor (dB) to scale the output by (default: -20dB)
+ ///
+ float Level { get; }
+}
\ No newline at end of file
diff --git a/SharpPipe/Managed wrapper classes/ZitaReverb.cs b/SharpPipe/Managed wrapper classes/ZitaReverb.cs
index 2dc3f1b..9d7c509 100644
--- a/SharpPipe/Managed wrapper classes/ZitaReverb.cs
+++ b/SharpPipe/Managed wrapper classes/ZitaReverb.cs
@@ -7,14 +7,14 @@ namespace SharpPipe;
///
/// Uses the 8 FDB zitareverb algorithm to provide reverb to processed samples ( see: https://paulbatchelor.github.io/res/soundpipe/docs/zitarev.html )
///
-public class ZitaReverb : IDisposable
+public class ZitaReverb : IDisposable, IZitaFilter
{
internal IntPtr zitaRevObject;
///
/// The soundpipe object used by this reverb
///
- public SoundPipe Pipe;
+ public SoundPipe Pipe { get; }
///
/// True if the object is disposed
@@ -198,4 +198,4 @@ private void Dispose(bool disposing)
{
Dispose(false);
}
-}
\ No newline at end of file
+}