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;
34 
35 typedef struct {
36  jack_uuid_t subject;
37  uint32_t property_cnt;
39  uint32_t property_size;
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