Jack2 1.9.12

JackMetadata.h
1 /*
2 Copyright (C) 2011 David Robillard
3 Copyright (C) 2013 Paul Davis
4
5 This program is free software; you can redistribute it and/or modify it
6 under the terms of the GNU Lesser General Public License as published by
7 the Free Software Foundation; either version 2.1 of the License, or (at
8 your option) any later version.
9
10 This program is distributed in the hope that it will be useful, but WITHOUT
11 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12 FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
13 License for more details.
14
15 You should have received a copy of the GNU Lesser General Public License
16 along with this program; if not, write to the Free Software Foundation,
17 Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 */
19
20 #ifndef __jack_metadata_int_h__
21 #define __jack_metadata_int_h__
22
23 #include <stdint.h>
24
25 #ifdef __cplusplus
26 extern "C" {
27 #endif
28
29 typedef struct {
30 const char* key;
31 const char* data;
32 const char* type;
33 } jack_property_t;
34
35 typedef struct {
36 jack_uuid_t subject;
37 uint32_t property_cnt;
38 jack_property_t* properties;
39 uint32_t property_size;
40 } jack_description_t;
41
42 typedef enum {
43 PropertyCreated,
44 PropertyChanged,
45 PropertyDeleted
46 } jack_property_change_t;
47
48 typedef void (*JackPropertyChangeCallback)(jack_uuid_t subject,
49 const char* key,
50 jack_property_change_t change,
51 void* arg);
52
53 #ifdef __cplusplus
54 }
55 #endif
56 #endif
jack_property_t
Definition: JackMetadata.h:29
jack_property_t::type
const char * type
Definition: JackMetadata.h:32
jack_property_t::data
const char * data
Definition: JackMetadata.h:31
jack_description_t::property_size
uint32_t property_size
Definition: JackMetadata.h:39
jack_description_t
Definition: JackMetadata.h:35
jack_property_t::key
const char * key
Definition: JackMetadata.h:30
jack_description_t::subject
jack_uuid_t subject
Definition: JackMetadata.h:36
jack_description_t::properties
jack_property_t * properties
Definition: JackMetadata.h:38
jack_description_t::property_cnt
uint32_t property_cnt
Definition: JackMetadata.h:37