Skip to content

Commit

Permalink
Merge pull request #23631 from RomanPudashkin/musesampler_build_number
Browse files Browse the repository at this point in the history
musesampler_build_number
  • Loading branch information
DmitryArefiev committed Jul 16, 2024
2 parents 8e86cf0 + 3301ac8 commit f499176
Show file tree
Hide file tree
Showing 6 changed files with 21 additions and 1 deletion.
2 changes: 2 additions & 0 deletions src/framework/musesampler/imusesamplerconfiguration.h
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,8 @@ class IMuseSamplerConfiguration : MODULE_EXPORT_INTERFACE

virtual io::path_t userLibraryPath() const = 0;
virtual io::path_t fallbackLibraryPath() const = 0;

virtual bool shouldShowBuildNumber() const = 0;
};
}

Expand Down
1 change: 1 addition & 0 deletions src/framework/musesampler/internal/apitypes.h
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@ typedef const char*(* ms_get_version_string)();
typedef int (* ms_get_version_major)();
typedef int (* ms_get_version_minor)();
typedef int (* ms_get_version_revision)();
typedef int (* ms_get_version_build_number)();

/*\\\ TYPES \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\*/

Expand Down
4 changes: 4 additions & 0 deletions src/framework/musesampler/internal/libhandler.h
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ struct MuseSamplerLibHandler
ms_get_version_major getVersionMajor = nullptr;
ms_get_version_minor getVersionMinor = nullptr;
ms_get_version_revision getVersionRevision = nullptr;
ms_get_version_build_number getBuildNumber = nullptr;
ms_get_version_string getVersionString = nullptr;

ms_contains_instrument containsInstrument = nullptr;
Expand Down Expand Up @@ -131,6 +132,7 @@ struct MuseSamplerLibHandler
getVersionMajor = (ms_get_version_major)muse::getLibFunc(m_lib, "ms_get_version_major");
getVersionMinor = (ms_get_version_minor)muse::getLibFunc(m_lib, "ms_get_version_minor");
getVersionRevision = (ms_get_version_revision)muse::getLibFunc(m_lib, "ms_get_version_revision");
getBuildNumber = (ms_get_version_build_number)muse::getLibFunc(m_lib, "ms_get_version_build_number");
getVersionString = (ms_get_version_string)muse::getLibFunc(m_lib, "ms_get_version_string");

// Invalid...
Expand Down Expand Up @@ -306,6 +308,7 @@ struct MuseSamplerLibHandler
&& getVersionMajor
&& getVersionMinor
&& getVersionRevision
&& getBuildNumber
&& getVersionString
&& containsInstrument
&& getMatchingInstrumentId
Expand Down Expand Up @@ -366,6 +369,7 @@ struct MuseSamplerLibHandler
<< "\n ms_get_version_major -" << reinterpret_cast<uint64_t>(getVersionMajor)
<< "\n ms_get_version_minor -" << reinterpret_cast<uint64_t>(getVersionMinor)
<< "\n ms_get_version_revision -" << reinterpret_cast<uint64_t>(getVersionRevision)
<< "\n ms_get_version_build_number -" << reinterpret_cast<uint64_t>(getBuildNumber)
<< "\n ms_get_version_string -" << reinterpret_cast<uint64_t>(getVersionString)
<< "\n ms_contains_instrument -" << reinterpret_cast<uint64_t>(containsInstrument)
<< "\n ms_get_matching_instrument_id -" << reinterpret_cast<uint64_t>(getMatchingInstrumentId)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -87,3 +87,8 @@ muse::io::path_t MuseSamplerConfiguration::fallbackLibraryPath() const
{
return FALLBACK_PATH;
}

bool MuseSamplerConfiguration::shouldShowBuildNumber() const
{
return globalConfig()->devModeEnabled();
}
2 changes: 2 additions & 0 deletions src/framework/musesampler/internal/musesamplerconfiguration.h
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,8 @@ class MuseSamplerConfiguration : public IMuseSamplerConfiguration
// Backup location for system-wide sampler install
io::path_t fallbackLibraryPath() const override;

bool shouldShowBuildNumber() const override;

private:
io::path_t defaultPath() const;
};
Expand Down
8 changes: 7 additions & 1 deletion src/framework/musesampler/internal/musesamplerresolver.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -235,7 +235,13 @@ std::string MuseSamplerResolver::version() const
return std::string();
}

return String::fromUtf8(m_libHandler->getVersionString()).toStdString();
String ver = String::fromUtf8(m_libHandler->getVersionString());

if (configuration()->shouldShowBuildNumber()) {
ver += u"." + String::number(m_libHandler->getBuildNumber());
}

return ver.toStdString();
}

bool MuseSamplerResolver::isInstalled() const
Expand Down

0 comments on commit f499176

Please sign in to comment.