router: fix for bluetooth disappearing causing assert in combine
[profile/ivi/pulseaudio-module-murphy-ivi.git] / murphy / userdata.h
1 #ifndef foouserdatafoo
2 #define foouserdatafoo
3
4 #include <stdbool.h>
5 #include <pulsecore/core.h>
6
7 #include "multiplex.h"
8
9
10 #define PA_PROP_ROUTING_CLASS_NAME  "routing.class.name"
11 #define PA_PROP_ROUTING_CLASS_ID    "routing.class.id"
12 #define PA_PROP_ROUTING_METHOD      "routing.method"
13 #define PA_PROP_ROUTING_TABLE       "routing.table"
14
15 #define PA_ROUTING_DEFAULT           "default"
16 #define PA_ROUTING_EXPLICIT          "explicit"
17
18 typedef struct pa_card               pa_card;
19 typedef struct pa_sink               pa_sink;
20
21 typedef struct pa_null_sink          pa_null_sink;
22 typedef struct pa_tracker            pa_tracker;
23 typedef struct pa_audiomgr           pa_audiomgr;
24 typedef struct pa_policy_dbusif      pa_policy_dbusif;
25 typedef struct pa_discover           pa_discover;
26 typedef struct pa_router             pa_router;
27 typedef struct pa_mir_config         pa_mir_config;
28 typedef struct pa_nodeset            pa_nodeset;
29 typedef struct pa_node_card          pa_node_card;
30 typedef struct pa_card_hooks         pa_card_hooks;
31 typedef struct pa_sink_hooks         pa_sink_hooks;
32 typedef struct pa_source_hooks       pa_source_hooks;
33 typedef struct pa_sink_input_hooks   pa_sink_input_hooks;
34
35 typedef enum   mir_direction         mir_direction;
36 typedef enum   mir_implement         mir_implement;
37 typedef enum   mir_location          mir_location;
38 typedef enum   mir_node_type         mir_node_type;
39 typedef enum   mir_privacy           mir_privacy; 
40 typedef struct mir_node              mir_node;
41 typedef struct mir_rtgroup           mir_rtgroup;
42 typedef struct mir_rtentry           mir_rtentry;
43 typedef struct mir_connection        mir_connection;
44
45 typedef struct am_domainreg_data     am_domainreg_data;
46 typedef struct am_nodereg_data       am_nodereg_data;
47 typedef struct am_nodeunreg_data     am_nodeunreg_data;
48 typedef struct am_ack_data           am_ack_data;
49 typedef struct am_connect_data       am_connect_data;
50
51
52
53 typedef struct {
54     char *profile;    /**< During profile change it contains the new profile
55                            name. Otherwise it is NULL. When sink tracking
56                            hooks called the card's active_profile still
57                            points to the old profile */
58 } pa_mir_state;
59
60
61 struct userdata {
62     pa_core           *core;
63     pa_module         *module;
64     pa_null_sink      *nullsink;
65     pa_nodeset        *nodeset;
66     pa_audiomgr       *audiomgr;
67     pa_policy_dbusif  *dbusif;
68     pa_discover       *discover;
69     pa_tracker        *tracker;
70     pa_router         *router;
71     pa_multiplex      *multiplex;
72     pa_mir_config     *config;
73     pa_mir_state       state;
74 };
75
76 #endif
77
78 /*
79  * Local Variables:
80  * c-basic-offset: 4
81  * indent-tabs-mode: nil
82  * End:
83  *
84  */