Skip to content

Commit 5c3af3c

Browse files
authored
chore: init setup for clang tidy (#982)
1 parent 0fc0c16 commit 5c3af3c

111 files changed

Lines changed: 628 additions & 394 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
# Full clang-tidy configuration for react-native-audio-api C++.
2+
# See: https://clang.llvm.org/extra/clang-tidy/checks/list.html
3+
# Tweak checks in .clangd (Diagnostics.ClangTidy.Remove) to disable noisy ones.
4+
5+
Checks: '-*,
6+
bugprone-*,
7+
-bugprone-easily-swappable-parameters,
8+
modernize-*,
9+
-modernize-use-trailing-return-type,
10+
performance-*,
11+
readability-*,
12+
-readability-uppercase-literal-suffix,
13+
-readability-math-missing-parentheses,
14+
-readability-isolate-declaration,
15+
-readability-identifier-length,
16+
cppcoreguidelines-*,
17+
-cppcoreguidelines-non-private-member-variables-in-classes,
18+
-cppcoreguidelines-pro-bounds-avoid-unchecked-container-access,
19+
-cppcoreguidelines-pro-bounds-pointer-arithmetic,
20+
-cppcoreguidelines-pro-type-union-access,
21+
-cppcoreguidelines-pro-type-reinterpret-cast,
22+
-cppcoreguidelines-avoid-do-while,
23+
-cppcoreguidelines-pro-bounds-constant-array-index,
24+
-cppcoreguidelines-init-variables,
25+
-cppcoreguidelines-pro-type-vararg,
26+
concurrency-*'
27+
28+
HeaderFilterRegex: '.*/(audioapi|common/cpp|src/main/cpp)/.*'
29+
30+
FormatStyle: file
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
Documentation:
2+
CommentFormat: Doxygen
3+
4+
CompileFlags:
5+
Add:
6+
- -std=c++20
7+
8+
Diagnostics:
9+
ClangTidy:
10+
FastCheckFilter: Loose

packages/react-native-audio-api/android/src/main/cpp/audioapi/android/core/AndroidAudioRecorder.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ AndroidAudioRecorder::~AndroidAudioRecorder() {
4949

5050
if (isConnected()) {
5151
isConnected_.store(false, std::memory_order_release);
52-
adapterNode_->cleanup();
52+
adapterNode_->adapterCleanup();
5353
}
5454
}
5555

@@ -198,7 +198,7 @@ Result<std::tuple<std::string, double, double>, std::string> AndroidAudioRecorde
198198
}
199199

200200
if (isConnected()) {
201-
adapterNode_->cleanup();
201+
adapterNode_->adapterCleanup();
202202
}
203203

204204
filePath_ = "";

packages/react-native-audio-api/common/cpp/audioapi/HostObjects/AudioParamHostObject.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ JSI_HOST_FUNCTION_IMPL(AudioParamHostObject, setTargetAtTime) {
103103
JSI_HOST_FUNCTION_IMPL(AudioParamHostObject, setValueCurveAtTime) {
104104
auto arrayBuffer =
105105
args[0].getObject(runtime).getPropertyAsObject(runtime, "buffer").getArrayBuffer(runtime);
106-
auto rawValues = reinterpret_cast<float *>(arrayBuffer.data(runtime));
106+
auto *rawValues = reinterpret_cast<float *>(arrayBuffer.data(runtime));
107107
auto length = static_cast<int>(arrayBuffer.size(runtime) / sizeof(float));
108108
auto values = std::make_shared<AudioArray>(rawValues, length);
109109

packages/react-native-audio-api/common/cpp/audioapi/HostObjects/BaseAudioContextHostObject.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -262,19 +262,19 @@ JSI_HOST_FUNCTION_IMPL(BaseAudioContextHostObject, createBufferQueueSource) {
262262
JSI_HOST_FUNCTION_IMPL(BaseAudioContextHostObject, createPeriodicWave) {
263263
auto arrayBufferReal =
264264
args[0].getObject(runtime).getPropertyAsObject(runtime, "buffer").getArrayBuffer(runtime);
265-
auto real = reinterpret_cast<float *>(arrayBufferReal.data(runtime));
265+
auto *real = reinterpret_cast<float *>(arrayBufferReal.data(runtime));
266266
auto length = static_cast<int>(arrayBufferReal.size(runtime) / sizeof(float));
267267

268268
auto arrayBufferImag =
269269
args[1].getObject(runtime).getPropertyAsObject(runtime, "buffer").getArrayBuffer(runtime);
270-
auto imag = reinterpret_cast<float *>(arrayBufferImag.data(runtime));
270+
auto *imag = reinterpret_cast<float *>(arrayBufferImag.data(runtime));
271271

272272
auto disableNormalization = args[2].getBool();
273273

274274
auto complexData = std::vector<std::complex<float>>(length);
275275

276-
for (size_t i = 0; i < length; i++) {
277-
complexData[i] = std::complex<float>(static_cast<float>(real[i]), static_cast<float>(imag[i]));
276+
for (int i = 0; i < length; i++) {
277+
complexData[i] = std::complex<float>(real[i], imag[i]);
278278
}
279279

280280
auto periodicWave = context_->createPeriodicWave(complexData, disableNormalization, length);

packages/react-native-audio-api/common/cpp/audioapi/HostObjects/effects/ConvolverNodeHostObject.cpp

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -67,17 +67,17 @@ void ConvolverNodeHostObject::setBuffer(const std::shared_ptr<AudioBuffer> &buff
6767
}
6868

6969
auto threadPool = std::make_shared<ThreadPool>(4);
70-
std::vector<Convolver> convolvers;
70+
std::vector<std::unique_ptr<Convolver>> convolvers;
7171
for (size_t i = 0; i < copiedBuffer->getNumberOfChannels(); ++i) {
7272
AudioArray channelData(*copiedBuffer->getChannel(i));
73-
convolvers.emplace_back();
74-
convolvers.back().init(RENDER_QUANTUM_SIZE, channelData, copiedBuffer->getSize());
73+
convolvers.push_back(std::make_unique<Convolver>());
74+
convolvers.back()->init(RENDER_QUANTUM_SIZE, channelData, copiedBuffer->getSize());
7575
}
7676
if (copiedBuffer->getNumberOfChannels() == 1) {
7777
// add one more convolver, because right now input is always stereo
7878
AudioArray channelData(*copiedBuffer->getChannel(0));
79-
convolvers.emplace_back();
80-
convolvers.back().init(RENDER_QUANTUM_SIZE, channelData, copiedBuffer->getSize());
79+
convolvers.push_back(std::make_unique<Convolver>());
80+
convolvers.back()->init(RENDER_QUANTUM_SIZE, channelData, copiedBuffer->getSize());
8181
}
8282

8383
auto internalBuffer = std::make_shared<DSPAudioBuffer>(
@@ -87,20 +87,20 @@ void ConvolverNodeHostObject::setBuffer(const std::shared_ptr<AudioBuffer> &buff
8787

8888
struct SetupData {
8989
std::shared_ptr<AudioBuffer> buffer;
90-
std::vector<Convolver> convolvers;
90+
std::vector<std::unique_ptr<Convolver>> convolvers;
9191
std::shared_ptr<ThreadPool> threadPool;
9292
std::shared_ptr<DSPAudioBuffer> internalBuffer;
9393
std::shared_ptr<DSPAudioBuffer> intermediateBuffer;
9494
float scaleFactor;
9595
};
9696

9797
auto setupData = std::make_shared<SetupData>(SetupData{
98-
copiedBuffer,
99-
std::move(convolvers),
100-
threadPool,
101-
internalBuffer,
102-
intermediateBuffer,
103-
scaleFactor});
98+
.buffer = copiedBuffer,
99+
.convolvers = std::move(convolvers),
100+
.threadPool = threadPool,
101+
.internalBuffer = internalBuffer,
102+
.intermediateBuffer = intermediateBuffer,
103+
.scaleFactor = scaleFactor});
104104

105105
auto event = [convolverNode, setupData](BaseAudioContext &) {
106106
convolverNode->setBuffer(

packages/react-native-audio-api/common/cpp/audioapi/HostObjects/events/AudioEventHandlerRegistryHostObject.cpp

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,8 @@
77
namespace audioapi {
88

99
AudioEventHandlerRegistryHostObject::AudioEventHandlerRegistryHostObject(
10-
const std::shared_ptr<AudioEventHandlerRegistry> &eventHandlerRegistry) {
11-
eventHandlerRegistry_ = eventHandlerRegistry;
12-
10+
const std::shared_ptr<AudioEventHandlerRegistry> &eventHandlerRegistry)
11+
: eventHandlerRegistry_(eventHandlerRegistry) {
1312
addFunctions(
1413
JSI_EXPORT_FUNCTION(AudioEventHandlerRegistryHostObject, addAudioEventListener),
1514
JSI_EXPORT_FUNCTION(AudioEventHandlerRegistryHostObject, removeAudioEventListener));

packages/react-native-audio-api/common/cpp/audioapi/HostObjects/sources/AudioBufferHostObject.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ JSI_HOST_FUNCTION_IMPL(AudioBufferHostObject, getChannelData) {
5656
JSI_HOST_FUNCTION_IMPL(AudioBufferHostObject, copyFromChannel) {
5757
auto arrayBuffer =
5858
args[0].getObject(runtime).getPropertyAsObject(runtime, "buffer").getArrayBuffer(runtime);
59-
auto destination = reinterpret_cast<float *>(arrayBuffer.data(runtime));
59+
auto *destination = reinterpret_cast<float *>(arrayBuffer.data(runtime));
6060
auto length = arrayBuffer.size(runtime) / sizeof(float);
6161
auto channelNumber = static_cast<int>(args[1].getNumber());
6262
auto startInChannel = static_cast<size_t>(args[2].getNumber());
@@ -69,7 +69,7 @@ JSI_HOST_FUNCTION_IMPL(AudioBufferHostObject, copyFromChannel) {
6969
JSI_HOST_FUNCTION_IMPL(AudioBufferHostObject, copyToChannel) {
7070
auto arrayBuffer =
7171
args[0].getObject(runtime).getPropertyAsObject(runtime, "buffer").getArrayBuffer(runtime);
72-
auto source = reinterpret_cast<float *>(arrayBuffer.data(runtime));
72+
auto *source = reinterpret_cast<float *>(arrayBuffer.data(runtime));
7373
auto length = arrayBuffer.size(runtime) / sizeof(float);
7474
auto channelNumber = static_cast<int>(args[1].getNumber());
7575
auto startInChannel = static_cast<size_t>(args[2].getNumber());

packages/react-native-audio-api/common/cpp/audioapi/HostObjects/sources/AudioBufferHostObject.h

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,9 @@ class AudioBufferHostObject : public JsiHostObject {
2727
return *this;
2828
}
2929

30-
[[nodiscard]] inline size_t getSizeInBytes() const {
30+
~AudioBufferHostObject() override = default;
31+
32+
[[nodiscard]] size_t getSizeInBytes() const {
3133
// *2 because every time buffer is passed we create a copy of it.
3234
return audioBuffer_->getSize() * audioBuffer_->getNumberOfChannels() * sizeof(float) * 2;
3335
}

packages/react-native-audio-api/common/cpp/audioapi/HostObjects/sources/AudioBufferQueueSourceNodeHostObject.cpp

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,8 +74,9 @@ JSI_HOST_FUNCTION_IMPL(AudioBufferQueueSourceNodeHostObject, enqueueBuffer) {
7474
std::shared_ptr<AudioBuffer> tailBuffer = nullptr;
7575

7676
if (pitchCorrection_ && !stretchHasBeenInit_) {
77-
initStretch(copiedBuffer->getNumberOfChannels(), copiedBuffer->getSampleRate());
78-
int extraTailFrames =
77+
initStretch(
78+
static_cast<int>(copiedBuffer->getNumberOfChannels()), copiedBuffer->getSampleRate());
79+
auto extraTailFrames =
7980
static_cast<size_t>((inputLatency_ + outputLatency_) * copiedBuffer->getSampleRate());
8081
tailBuffer = std::make_shared<AudioBuffer>(
8182
copiedBuffer->getNumberOfChannels(), extraTailFrames, copiedBuffer->getSampleRate());

0 commit comments

Comments
 (0)