style: unify identifier naming per updated conventions

Automated with clang-tidy readability-identifier-naming (config added to
.clang-tidy) plus scripted passes, per the updated rules now documented
in CONTRIBUTING.md:

- types (class/struct/enum/alias/template params): PascalCase
- functions, variables, members: snake_case (incl. rational -> Rational)
- private/protected members: trailing underscore; static member
  variables likewise (instance_, available_themes_)
- constants and enum values: snake_case (kLinear -> k_linear,
  F32P -> f32p); ALL_CAPS reserved for macros
- macros: OAK_ prefix (OLIVE_ADD_TEST/OLIVE_ASSERT/OLIVE_CONFIG ->
  OAK_ADD_TEST/OAK_ASSERT/OAK_CONFIG, GL_PREAMBLE -> OAK_GL_PREAMBLE,
  include guards -> OAK_*)
- file names: all lowercase (Current/Plugin/OliveHost/OliveClip/
  OlivePluginInstance -> current/plugin/olivehost/oliveclip/
  oliveplugininstance)
- getters share the member name sans underscore, setters set_foo()
- Qt and third-party (OpenFX) virtual overrides and framework callbacks
  keep their original names (exempt in .clang-tidy)

Manual follow-ups required where automation could not reach:
- string-based QMetaObject/SIGNAL/SLOT references updated to renamed
  methods (AddTask, CreatedFile, DeleteSpecificFile, moveSelectionUp, ...)
- macro bodies referencing renamed methods (OLIVE_CONFIG,
  NODE_DEFAULT_DESTRUCTOR, MANAGEDDISPLAYWIDGET_*)
- self-shadowing locals renamed where signals/methods became same-named
  (size_changed, worker_count, selected_items, import param, filters)
- third_party OFX member/namespace usages restored (OFX::Host::*,
  _created, _clipPrefsDirty, createInstance, clearPersistentMessage)
- STL protocol aliases restored (const_iterator) with .clang-tidy
  ignore rules; qHash overloads restored

Full build and test suite pass: ctest 4/4, ~1960 gtest cases green.
This commit is contained in:
2026-07-19 16:10:54 +08:00
parent cb1718a103
commit bb40b4923e
1014 changed files with 44257 additions and 44220 deletions
+57 -57
View File
@@ -32,79 +32,79 @@ ExportTask::ExportTask(ViewerOutput *viewer_node, ColorManager *color_manager,
{
// Create a copy of the project
copier_ = new ProjectCopier(this);
copier_->SetProject(viewer_node->project());
copier_->set_project(viewer_node->project());
set_viewer(copier_->GetCopy(viewer_node));
color_manager_ = copier_->GetCopiedProject()->color_manager();
set_viewer(copier_->get_copy(viewer_node));
color_manager_ = copier_->get_copied_project()->color_manager();
// Adjust video params to have no divider
VideoParams vp = viewer_node->GetVideoParams();
VideoParams vp = viewer_node->get_video_params();
vp.set_divider(1);
vp.set_time_base(params.video_params().time_base());
vp.set_frame_rate(params.video_params().frame_rate());
set_video_params(vp);
set_audio_params(viewer_node->GetAudioParams());
set_audio_params(viewer_node->get_audio_params());
SetTitle(tr("Exporting \"%1\"").arg(viewer_node->GetLabel()));
SetNativeProgressSignallingEnabled(false);
set_title(tr("Exporting \"%1\"").arg(viewer_node->get_label()));
set_native_progress_signalling_enabled(false);
}
bool ExportTask::Run()
bool ExportTask::run()
{
// For safety, if we're overwriting, we save to a temporary filename and then only overwrite it
// at the end
QString real_filename = params_.filename();
if (QFileInfo::exists(params_.filename())) {
// Generate a filename that definitely doesn't exist
params_.SetFilename(
FileFunctions::GetSafeTemporaryFilename(real_filename));
params_.set_filename(
FileFunctions::get_safe_temporary_filename(real_filename));
}
// If we're exporting to a sidecar subtitle file, disable the subtitles in the main encoder
bool subtitles_enabled = params_.subtitles_enabled();
EncodingParams sidecar_params = params_;
if (subtitles_enabled && params_.subtitles_are_sidecar()) {
params_.DisableSubtitles();
params_.disable_subtitles();
}
encoder_ = std::shared_ptr<Encoder>(Encoder::CreateFromParams(params_));
encoder_ = std::shared_ptr<Encoder>(Encoder::create_from_params(params_));
if (!encoder_) {
SetError(tr("Failed to create encoder"));
set_error(tr("Failed to create encoder"));
return false;
}
if (!encoder_->Open()) {
SetError(tr("Failed to open file: %1").arg(encoder_->GetError()));
if (!encoder_->open()) {
set_error(tr("Failed to open file: %1").arg(encoder_->get_error()));
return false;
}
if (subtitles_enabled && params_.subtitles_are_sidecar()) {
// Construct sidecar params
sidecar_params.DisableVideo();
sidecar_params.DisableAudio();
sidecar_params.disable_video();
sidecar_params.disable_audio();
QString sidecar_filename;
{
QFileInfo fi(real_filename);
sidecar_filename = fi.completeBaseName();
sidecar_filename.append('.');
sidecar_filename.append(ExportFormat::GetExtension(
sidecar_filename.append(ExportFormat::get_extension(
sidecar_params.subtitle_sidecar_fmt()));
sidecar_filename = fi.dir().filePath(sidecar_filename);
}
sidecar_params.SetFilename(sidecar_filename);
sidecar_params.set_filename(sidecar_filename);
subtitle_encoder_ = std::shared_ptr<Encoder>(Encoder::CreateFromFormat(
subtitle_encoder_ = std::shared_ptr<Encoder>(Encoder::create_from_format(
sidecar_params.subtitle_sidecar_fmt(), sidecar_params));
if (!subtitle_encoder_) {
SetError(tr("Failed to create subtitle encoder"));
set_error(tr("Failed to create subtitle encoder"));
return false;
}
if (!subtitle_encoder_->Open()) {
SetError(tr("Failed to open subtitle sidecar file: %1")
if (!subtitle_encoder_->open()) {
set_error(tr("Failed to open subtitle sidecar file: %1")
.arg(sidecar_filename));
return false;
}
@@ -117,7 +117,7 @@ bool ExportTask::Run()
export_range_ = params_.custom_range();
} else {
// Render entire sequence
export_range_ = TimeRange(0, viewer()->GetLength());
export_range_ = TimeRange(0, viewer()->get_length());
}
frame_time_ = 0;
@@ -132,8 +132,8 @@ bool ExportTask::Run()
video_force_size = QSize(params_.video_params().width(),
params_.video_params().height());
if (params_.video_scaling_method() != EncodingParams::kStretch) {
video_force_matrix = EncodingParams::GenerateMatrix(
if (params_.video_scaling_method() != EncodingParams::k_stretch) {
video_force_matrix = EncodingParams::generate_matrix(
params_.video_scaling_method(), video_params().width(),
video_params().height(), params_.video_params().width(),
params_.video_params().height());
@@ -144,8 +144,8 @@ bool ExportTask::Run()
}
// Create color processor
color_processor_ = ColorProcessor::Create(
color_manager_, color_manager_->GetReferenceColorSpace(),
color_processor_ = ColorProcessor::create(
color_manager_, color_manager_->get_reference_color_space(),
params_.color_transform());
}
@@ -170,36 +170,36 @@ bool ExportTask::Run()
subtitle_range = export_range_;
}
Render(color_manager_, video_range, audio_range, subtitle_range,
RenderMode::kOnline, nullptr, video_force_size, video_force_matrix,
encoder_->GetDesiredPixelFormat(), VideoParams::kRGBAChannelCount,
render(color_manager_, video_range, audio_range, subtitle_range,
RenderMode::k_online, nullptr, video_force_size, video_force_matrix,
encoder_->get_desired_pixel_format(), VideoParams::k_rgba_channel_count,
color_processor_, params_.color_transform());
bool success = true;
encoder_->Close();
if (!encoder_->GetError().isEmpty()) {
SetError(encoder_->GetError());
encoder_->close();
if (!encoder_->get_error().isEmpty()) {
set_error(encoder_->get_error());
success = false;
}
if (subtitle_encoder_ != encoder_) {
subtitle_encoder_->Close();
if (!subtitle_encoder_->GetError().isEmpty()) {
SetError(subtitle_encoder_->GetError());
subtitle_encoder_->close();
if (!subtitle_encoder_->get_error().isEmpty()) {
set_error(subtitle_encoder_->get_error());
success = false;
}
}
// If cancelled, delete the file we made, which is always a file we created since we write to a
// temp file during the actual encoding process
if (IsCancelled()) {
if (is_cancelled()) {
QFile::remove(params_.filename());
} else if (params_.filename() != real_filename) {
// If we were writing to a temp file, overwrite now
if (!FileFunctions::RenameFileAllowOverwrite(params_.filename(),
if (!FileFunctions::rename_file_allow_overwrite(params_.filename(),
real_filename)) {
SetError(
set_error(
tr("Failed to overwrite \"%1\". Export has been saved as \"%2\" instead.")
.arg(real_filename, params_.filename()));
success = false;
@@ -209,14 +209,14 @@ bool ExportTask::Run()
return success;
}
bool ExportTask::FrameDownloaded(FramePtr f, const rational &time)
bool ExportTask::frame_downloaded(FramePtr f, const Rational &time)
{
rational actual_time = time - export_range_.in();
Rational actual_time = time - export_range_.in();
time_map_.insert(actual_time, f);
while (!IsCancelled()) {
rational real_time = Timecode::timestamp_to_time(
while (!is_cancelled()) {
Rational real_time = Timecode::timestamp_to_time(
frame_time_, video_params().frame_rate_as_time_base());
if (!time_map_.contains(real_time)) {
@@ -225,26 +225,26 @@ bool ExportTask::FrameDownloaded(FramePtr f, const rational &time)
// Unfortunately this can't be done in another thread since the frames need to be sent
// one after the other chronologically.
if (!encoder_->WriteFrame(time_map_.take(real_time), real_time)) {
SetError(encoder_->GetError());
if (!encoder_->write_frame(time_map_.take(real_time), real_time)) {
set_error(encoder_->get_error());
return false;
}
frame_time_++;
emit ProgressChanged(double(frame_time_) /
double(GetTotalNumberOfFrames()));
emit progress_changed(double(frame_time_) /
double(get_total_number_of_frames()));
}
return true;
}
bool ExportTask::AudioDownloaded(const TimeRange &range,
bool ExportTask::audio_downloaded(const TimeRange &range,
const SampleBuffer &samples)
{
TimeRange adjusted_range = range - export_range_.in();
if (adjusted_range.in() == audio_time_) {
if (!WriteAudioLoop(adjusted_range, samples)) {
if (!write_audio_loop(adjusted_range, samples)) {
return false;
}
} else {
@@ -254,21 +254,21 @@ bool ExportTask::AudioDownloaded(const TimeRange &range,
return true;
}
bool ExportTask::EncodeSubtitle(const SubtitleBlock *sub)
bool ExportTask::encode_subtitle(const SubtitleBlock *sub)
{
if (!subtitle_encoder_->WriteSubtitle(sub)) {
SetError(subtitle_encoder_->GetError());
if (!subtitle_encoder_->write_subtitle(sub)) {
set_error(subtitle_encoder_->get_error());
return false;
} else {
return true;
}
}
bool ExportTask::WriteAudioLoop(const TimeRange &time,
bool ExportTask::write_audio_loop(const TimeRange &time,
const SampleBuffer &samples)
{
if (!encoder_->WriteAudio(samples)) {
SetError(encoder_->GetError());
if (!encoder_->write_audio(samples)) {
set_error(encoder_->get_error());
return false;
}
@@ -283,7 +283,7 @@ bool ExportTask::WriteAudioLoop(const TimeRange &time,
audio_map_.erase(it);
// Call recursively to write the next sample buffer
if (!WriteAudioLoop(t, s)) {
if (!write_audio_loop(t, s)) {
return false;
}