Zrythm
a highly automated and intuitive digital audio workstation
Loading...
Searching...
No Matches
port_connections_manager.h File Reference

Port connections manager. More...

#include "zrythm-config.h"
#include <stdbool.h>
#include "dsp/port_connection.h"
#include "utils/types.h"
#include "utils/yaml.h"
#include <glib.h>
Include dependency graph for port_connections_manager.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  PortConnectionsManager
 Port connections manager. More...
 

Macros

#define PORT_CONNECTIONS_MANAGER_SCHEMA_VERSION   1
 
#define PORT_CONNECTIONS_MGR   (PROJECT->port_connections_manager)
 
#define port_connections_manager_ensure_connect_from_connection(self, conn)
 

Functions

NONNULL void port_connections_manager_init_loaded (PortConnectionsManager *self)
 
PortConnectionsManagerport_connections_manager_new (void)
 
void port_connections_manager_regenerate_hashtables (PortConnectionsManager *self)
 Regenerates the hash tables.
 
int port_connections_manager_get_sources_or_dests (const PortConnectionsManager *self, GPtrArray *arr, const PortIdentifier *id, bool sources)
 Adds the sources/destinations of id in the given array.
 
int port_connections_manager_get_unlocked_sources_or_dests (const PortConnectionsManager *self, GPtrArray *arr, const PortIdentifier *id, bool sources)
 Adds the sources/destinations of id in the given array.
 
PortConnectionport_connections_manager_get_source_or_dest (const PortConnectionsManager *self, const PortIdentifier *id, bool sources)
 Wrapper over port_connections_manager_get_sources_or_dests() that returns the first connection.
 
PortConnectionport_connections_manager_find_connection (const PortConnectionsManager *self, const PortIdentifier *src, const PortIdentifier *dest)
 
bool port_connections_manager_predicate_is_send_of (const void *obj, const void *user_data)
 Returns whether the given connection is for the given send.
 
int port_connections_manager_find (const PortConnectionsManager *self, GPtrArray *arr, GenericPredicateFunc predicate)
 Adds the connections matching the given predicate to the given array (if given).
 
const PortConnectionport_connections_manager_ensure_connect (PortConnectionsManager *self, const PortIdentifier *src, const PortIdentifier *dest, float multiplier, bool locked, bool enabled)
 Stores the connection for the given ports if it doesn't exist, otherwise updates the existing connection.
 
bool port_connections_manager_ensure_disconnect (PortConnectionsManager *self, const PortIdentifier *src, const PortIdentifier *dest)
 Removes the connection for the given ports if it exists.
 
void port_connections_manager_ensure_disconnect_all (PortConnectionsManager *self, const PortIdentifier *pi)
 Disconnect all sources and dests of the given port identifier.
 
void port_connections_manager_reset (PortConnectionsManager *self, const PortConnectionsManager *src)
 Removes all connections from self.
 
bool port_connections_manager_contains_connection (const PortConnectionsManager *self, const PortConnection *const conn)
 
void port_connections_manager_print_ht (GHashTable *ht)
 
void port_connections_manager_print (const PortConnectionsManager *self)
 
NONNULL PortConnectionsManagerport_connections_manager_clone (const PortConnectionsManager *src)
 To be used during serialization.
 
NONNULL void port_connections_manager_free (PortConnectionsManager *self)
 Deletes port, doing required cleanup and updating counters.
 

Detailed Description

Port connections manager.

Definition in file port_connections_manager.h.