ACMX 2.139.0
Dual-Backend Real-Time GPU Video Synthesis
Loading...
Searching...
No Matches
shader-manifest.hpp File Reference

Optional JSON and legacy text shader-library manifests. More...

#include "backend.hpp"
#include <QDateTime>
#include <QList>
#include <QString>
#include <QStringList>
#include <optional>

Go to the source code of this file.

Classes

struct  acmx2::CustomUniformDefinition

Namespaces

namespace  acmx2

Enumerations

enum class  acmx2::ShaderLibraryType { acmx2::Source , acmx2::Runtime }
enum class  acmx2::ShaderManifestFormat { acmx2::Json , acmx2::Text }

Functions

bool acmx2::append_shader_manifest (const QString &directory, const QString &shader, QString &error)
 Add one shader to the preferred manifest if it is not already present.
bool acmx2::create_shader_manifest (const QString &directory, ShaderManifestFormat format, const QStringList &shaders, QString &error)
 Create a new manifest in the requested format.
bool acmx2::custom_uniform_metadata_matches (const QString &leftDirectory, const QString &rightDirectory, bool &matches, QString &error)
 Compare two manifests' custom-uniform ABI and numeric metadata.
bool acmx2::load_custom_uniforms (const QString &directory, QList< CustomUniformDefinition > &uniforms, QString &error)
 Load custom float-uniform controls from library.json.
bool acmx2::load_shader_manifest (const QString &directory, QStringList &shaders, QString &error)
 Load shader filenames from the preferred manifest in a directory.
bool acmx2::migrate_index_manifest_to_json (const QString &directory, bool &created, QString &error)
 Create library.json from index.txt when a JSON manifest is absent.
bool acmx2::remove_shader_manifest_entry (const QString &directory, const QString &shader, QString &error)
 Remove one shader from the preferred manifest, without deleting its file.
std::optional< Backend > acmx2::shader_manifest_backend (const QString &directory, QString &error)
 Read an optional top-level backend hint from library.json.
bool acmx2::shader_manifest_exists (const QString &directory)
 Return true when either supported manifest exists.
QDateTime acmx2::shader_manifest_last_modified (const QString &directory)
 Return the selected manifest's modification time.
std::optional< ShaderLibraryType > acmx2::shader_manifest_library_type (const QString &directory, QString &error)
 Read and validate an optional top-level library_type value.
QString acmx2::shader_manifest_path (const QString &directory)
 Resolve library.json first, then fall back to index.txt.
bool acmx2::write_custom_uniforms (const QString &directory, const QList< CustomUniformDefinition > &uniforms, QString &error)
 Rewrite custom float-uniform controls while preserving all other JSON fields.
bool acmx2::write_shader_manifest (const QString &directory, const QStringList &shaders, QString &error)
 Rewrite the preferred manifest, preserving JSON fields when possible.

Detailed Description

Optional JSON and legacy text shader-library manifests.

Definition in file shader-manifest.hpp.