Skip to content

Commit 1a461c5

Browse files
committed
Code formatting
1 parent 0d12bd1 commit 1a461c5

1 file changed

Lines changed: 58 additions & 51 deletions

File tree

modules/yup_dsp/filters/yup_FirResampler.h

Lines changed: 58 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -60,9 +60,9 @@ namespace yup
6060
template <int FirSize, int Ratio, typename SampleType, typename CoeffType = double>
6161
class FirUpsampler
6262
{
63-
static_assert(FirSize > 0, "FirSize must be positive");
64-
static_assert(Ratio > 1, "Ratio must be greater than 1");
65-
static_assert((FirSize % 4) == 0, "FirSize should be multiple of 4 for optimal performance");
63+
static_assert (FirSize > 0, "FirSize must be positive");
64+
static_assert (Ratio > 1, "Ratio must be greater than 1");
65+
static_assert ((FirSize % 4) == 0, "FirSize should be multiple of 4 for optimal performance");
6666

6767
public:
6868
//==============================================================================
@@ -119,15 +119,15 @@ class FirUpsampler
119119
SampleType processSample (SampleType inputSample) noexcept
120120
{
121121
jassert (coefficients != nullptr);
122-
122+
123123
// Store input sample in circular buffer
124124
buffer[bufferIndex] = inputSample;
125-
125+
126126
// Calculate first upsampled output (at phase 0)
127127
auto output = static_cast<SampleType> (0.0);
128128
int coeffIndex = 0;
129129
int bufferPos = bufferIndex;
130-
130+
131131
// Process in groups of 4 for better optimization
132132
for (int i = 0; i < FirSize; i += 4 * Ratio)
133133
{
@@ -137,7 +137,7 @@ class FirUpsampler
137137
output += static_cast<SampleType> (coefficients[coeffIndex + 1 * Ratio]) * buffer[(bufferPos + BufferSize - 1) & BufferMask];
138138
output += static_cast<SampleType> (coefficients[coeffIndex + 2 * Ratio]) * buffer[(bufferPos + BufferSize - 2) & BufferMask];
139139
output += static_cast<SampleType> (coefficients[coeffIndex + 3 * Ratio]) * buffer[(bufferPos + BufferSize - 3) & BufferMask];
140-
140+
141141
bufferPos -= 4;
142142
coeffIndex += 4 * Ratio;
143143
}
@@ -153,10 +153,10 @@ class FirUpsampler
153153
break;
154154
}
155155
}
156-
156+
157157
// Advance buffer index
158158
bufferIndex = (bufferIndex + 1) & BufferMask;
159-
159+
160160
return output;
161161
}
162162

@@ -170,19 +170,19 @@ class FirUpsampler
170170
{
171171
jassert (phase >= 1 && phase < Ratio);
172172
jassert (coefficients != nullptr);
173-
173+
174174
auto output = static_cast<SampleType> (0.0);
175175
int coeffIndex = phase;
176176
int bufferPos = (bufferIndex - 1 + BufferSize) & BufferMask; // Previous input position
177-
177+
178178
// Process coefficients at the specified phase
179179
for (int i = phase; i < FirSize; i += Ratio)
180180
{
181181
output += static_cast<SampleType> (coefficients[coeffIndex]) * buffer[(bufferPos + BufferSize) & BufferMask];
182182
--bufferPos;
183183
coeffIndex += Ratio;
184184
}
185-
185+
186186
return output;
187187
}
188188

@@ -199,7 +199,7 @@ class FirUpsampler
199199
{
200200
// First upsampled output
201201
outputBuffer[i * Ratio] = processSample (inputBuffer[i]);
202-
202+
203203
// Remaining interpolated outputs
204204
for (int phase = 1; phase < Ratio; ++phase)
205205
{
@@ -220,10 +220,10 @@ class FirUpsampler
220220
// Use power-of-2 buffer size for efficient wrapping
221221
static constexpr int BufferSize = nextPowerOfTwo (FirSize);
222222
static constexpr int BufferMask = BufferSize - 1;
223-
223+
224224
const CoeffType* coefficients;
225225
std::array<SampleType, BufferSize> buffer;
226-
int bufferIndex;
226+
int bufferIndex;
227227
};
228228

229229
//==============================================================================
@@ -257,8 +257,8 @@ class FirUpsampler
257257
template <int FirSize, typename SampleType, typename CoeffType = double>
258258
class FirDownsampler
259259
{
260-
static_assert(FirSize > 0, "FirSize must be positive");
261-
static_assert((FirSize % 4) == 0, "FirSize should be multiple of 4 for optimal performance");
260+
static_assert (FirSize > 0, "FirSize must be positive");
261+
static_assert ((FirSize % 4) == 0, "FirSize should be multiple of 4 for optimal performance");
262262

263263
public:
264264
//==============================================================================
@@ -333,22 +333,22 @@ class FirDownsampler
333333
SampleType processSample (SampleType inputSample, bool& hasOutput) noexcept
334334
{
335335
jassert (coefficients != nullptr);
336-
336+
337337
// Store input sample in circular buffer
338338
buffer[bufferIndex] = inputSample;
339339
bufferIndex = (bufferIndex + 1) & BufferMask;
340-
340+
341341
// Check if we should produce an output
342342
++decimationPhase;
343343
if (decimationPhase >= decimationRate)
344344
{
345345
decimationPhase = 0;
346346
hasOutput = true;
347-
347+
348348
// Calculate filtered output
349349
auto output = static_cast<SampleType> (0.0);
350350
int bufferPos = (bufferIndex - 1 + BufferSize) & BufferMask;
351-
351+
352352
// Process in groups of 4 for optimization
353353
int i = 0;
354354
for (; i <= FirSize - 4; i += 4)
@@ -359,14 +359,14 @@ class FirDownsampler
359359
output += static_cast<SampleType> (coefficients[i + 3]) * buffer[(bufferPos - 3 + BufferSize) & BufferMask];
360360
bufferPos -= 4;
361361
}
362-
362+
363363
// Handle remaining coefficients
364364
for (; i < FirSize; ++i)
365365
{
366366
output += static_cast<SampleType> (coefficients[i]) * buffer[bufferPos & BufferMask];
367367
bufferPos = (bufferPos - 1 + BufferSize) & BufferMask;
368368
}
369-
369+
370370
return output;
371371
}
372372
else
@@ -387,18 +387,18 @@ class FirDownsampler
387387
int processBlock (const SampleType* inputBuffer, SampleType* outputBuffer, int numSamples) noexcept
388388
{
389389
int outputCount = 0;
390-
390+
391391
for (int i = 0; i < numSamples; ++i)
392392
{
393393
bool hasOutput;
394394
const auto output = processSample (inputBuffer[i], hasOutput);
395-
395+
396396
if (hasOutput)
397397
{
398398
outputBuffer[outputCount++] = output;
399399
}
400400
}
401-
401+
402402
return outputCount;
403403
}
404404

@@ -415,13 +415,13 @@ class FirDownsampler
415415
// Use power-of-2 buffer size for efficient wrapping
416416
static constexpr int BufferSize = nextPowerOfTwo (FirSize);
417417
static constexpr int BufferMask = BufferSize - 1;
418-
418+
419419
const CoeffType* coefficients;
420420
std::array<SampleType, BufferSize> buffer;
421421
int bufferIndex;
422422
int decimationPhase;
423423
int decimationRate;
424-
424+
425425
//==============================================================================
426426
static constexpr int nextPowerOfTwo (int value)
427427
{
@@ -458,10 +458,10 @@ class FirResampler : public FilterBase<SampleType, CoeffType>
458458
/** Quality presets for automatic filter design */
459459
enum class Quality
460460
{
461-
draft, /** Fast processing, basic quality (32 taps) */
462-
normal, /** Balanced quality and performance (64 taps) */
463-
high, /** High quality, more computation (128 taps) */
464-
perfect /** Maximum quality, highest computation (256 taps) */
461+
draft, /** Fast processing, basic quality (32 taps) */
462+
normal, /** Balanced quality and performance (64 taps) */
463+
high, /** High quality, more computation (128 taps) */
464+
perfect /** Maximum quality, highest computation (256 taps) */
465465
};
466466

467467
//==============================================================================
@@ -587,18 +587,21 @@ class FirResampler : public FilterBase<SampleType, CoeffType>
587587
cutoffFreq,
588588
this->sampleRate * static_cast<double> (upsampleRatio),
589589
"kaiser",
590-
stopbandAttenuation
591-
);
590+
stopbandAttenuation);
592591
}
593592

594593
static int getFilterLengthForQuality (Quality qualityLevel) noexcept
595594
{
596595
switch (qualityLevel)
597596
{
598-
case Quality::draft: return 32;
599-
case Quality::normal: return 64;
600-
case Quality::high: return 128;
601-
case Quality::perfect: return 256;
597+
case Quality::draft:
598+
return 32;
599+
case Quality::normal:
600+
return 64;
601+
case Quality::high:
602+
return 128;
603+
case Quality::perfect:
604+
return 256;
602605
}
603606
return 64;
604607
}
@@ -607,10 +610,14 @@ class FirResampler : public FilterBase<SampleType, CoeffType>
607610
{
608611
switch (qualityLevel)
609612
{
610-
case Quality::draft: return static_cast<CoeffType> (40.0);
611-
case Quality::normal: return static_cast<CoeffType> (60.0);
612-
case Quality::high: return static_cast<CoeffType> (80.0);
613-
case Quality::perfect: return static_cast<CoeffType> (100.0);
613+
case Quality::draft:
614+
return static_cast<CoeffType> (40.0);
615+
case Quality::normal:
616+
return static_cast<CoeffType> (60.0);
617+
case Quality::high:
618+
return static_cast<CoeffType> (80.0);
619+
case Quality::perfect:
620+
return static_cast<CoeffType> (100.0);
614621
}
615622
return static_cast<CoeffType> (60.0);
616623
}
@@ -628,19 +635,19 @@ class FirResampler : public FilterBase<SampleType, CoeffType>
628635

629636
//==============================================================================
630637
/** Type aliases for common upsampler configurations */
631-
using FirUpsampler2x64 = FirUpsampler<64, 2, float>; // 2x upsampling, 64 taps
632-
using FirUpsampler4x64 = FirUpsampler<64, 4, float>; // 4x upsampling, 64 taps
633-
using FirUpsampler8x64 = FirUpsampler<64, 8, float>; // 8x upsampling, 64 taps
638+
using FirUpsampler2x64 = FirUpsampler<64, 2, float>; // 2x upsampling, 64 taps
639+
using FirUpsampler4x64 = FirUpsampler<64, 4, float>; // 4x upsampling, 64 taps
640+
using FirUpsampler8x64 = FirUpsampler<64, 8, float>; // 8x upsampling, 64 taps
634641

635-
using FirUpsampler2x128 = FirUpsampler<128, 2, float>; // 2x upsampling, 128 taps (high quality)
636-
using FirUpsampler4x128 = FirUpsampler<128, 4, float>; // 4x upsampling, 128 taps (high quality)
642+
using FirUpsampler2x128 = FirUpsampler<128, 2, float>; // 2x upsampling, 128 taps (high quality)
643+
using FirUpsampler4x128 = FirUpsampler<128, 4, float>; // 4x upsampling, 128 taps (high quality)
637644

638645
/** Type aliases for common downsampler configurations */
639-
using FirDownsampler64 = FirDownsampler<64, float>; // 64 taps downsampler
640-
using FirDownsampler128 = FirDownsampler<128, float>; // 128 taps downsampler (high quality)
646+
using FirDownsampler64 = FirDownsampler<64, float>; // 64 taps downsampler
647+
using FirDownsampler128 = FirDownsampler<128, float>; // 128 taps downsampler (high quality)
641648

642649
/** Type aliases for complete resampler */
643-
using FirResamplerFloat = FirResampler<float>; // float samples, double coefficients (default)
644-
using FirResamplerDouble = FirResampler<double>; // double samples, double coefficients (default)
650+
using FirResamplerFloat = FirResampler<float>; // float samples, double coefficients (default)
651+
using FirResamplerDouble = FirResampler<double>; // double samples, double coefficients (default)
645652

646653
} // namespace yup

0 commit comments

Comments
 (0)