obs-studio/plugins/mac-capture/audio-device-enum.h
jp9000 f53df7da64 clang-format: Apply formatting
Code submissions have continually suffered from formatting
inconsistencies that constantly have to be addressed.  Using
clang-format simplifies this by making code formatting more consistent,
and allows automation of the code formatting so that maintainers can
focus more on the code itself instead of code formatting.
2019-06-23 23:49:10 -07:00

37 lines
798 B
C

#pragma once
#include <util/darray.h>
#include <util/dstr.h>
struct device_item {
struct dstr name, value;
};
static inline void device_item_free(struct device_item *item)
{
dstr_free(&item->name);
dstr_free(&item->value);
}
struct device_list {
DARRAY(struct device_item) items;
};
static inline void device_list_free(struct device_list *list)
{
for (size_t i = 0; i < list->items.num; i++)
device_item_free(list->items.array + i);
da_free(list->items);
}
static inline void device_list_add(struct device_list *list,
struct device_item *item)
{
da_push_back(list->items, item);
memset(item, 0, sizeof(struct device_item));
}
extern void coreaudio_enum_devices(struct device_list *list, bool input);
extern bool coreaudio_get_device_id(CFStringRef uid, AudioDeviceID *id);