Zrythm
a highly automated and intuitive digital audio workstation
Loading...
Searching...
No Matches
collection.h
Go to the documentation of this file.
1// clang-format off
2// SPDX-FileCopyrightText: © 2020-2021, 2023-2024 Alexandros Theodotou <alex@zrythm.org>
3// SPDX-License-Identifier: LicenseRef-ZrythmLicense
4// clang-format on
5
12#ifndef __PLUGINS_PLUGIN_COLLECTION_H__
13#define __PLUGINS_PLUGIN_COLLECTION_H__
14
16#include "utils/yaml.h"
17
27typedef struct PluginCollection
28{
30 char * name;
31
34
36 GPtrArray * descriptors;
38
39void
40plugin_collection_init_loaded (PluginCollection * self);
41
47
53
54char *
55plugin_collection_get_name (PluginCollection * self);
56
57void
58plugin_collection_set_name (PluginCollection * self, const char * name);
59
67NONNULL bool
69 PluginCollection * self,
70 const PluginDescriptor * descr,
71 bool match_pointer);
72
76void
78 PluginCollection * self,
79 const PluginDescriptor * descr);
80
85void
87 PluginCollection * self,
88 const PluginDescriptor * descr);
89
93GMenuModel *
94plugin_collection_generate_context_menu (const PluginCollection * self);
95
99void
101
102void
103plugin_collection_free (PluginCollection * self);
104
109#endif
void plugin_collection_add_descriptor(PluginCollection *self, const PluginDescriptor *descr)
Appends a descriptor to the collection.
PluginCollection * plugin_collection_clone(const PluginCollection *self)
Clones a plugin collection.
NONNULL bool plugin_collection_contains_descriptor(PluginCollection *self, const PluginDescriptor *descr, bool match_pointer)
Returns whether the collection contains the given descriptor.
void plugin_collection_clear(PluginCollection *self)
Removes all the descriptors.
void plugin_collection_remove_descriptor(PluginCollection *self, const PluginDescriptor *descr)
Removes the descriptor matching the given one from the collection.
PluginCollection * plugin_collection_new(void)
Creates a new plugin collection.
Plugin collection used in the plugin browser.
Definition collection.h:28
char * description
Description of the collection (optional).
Definition collection.h:33
GPtrArray * descriptors
Plugin descriptors.
Definition collection.h:36
char * name
Name of the collection.
Definition collection.h:30
YAML utils.