]> rtime.felk.cvut.cz Git - frescor/fwp.git/blob - fwp/lib/mngt/fwp_participant.h
6ad4a02b7be7cda1306826406af5e84e8adea014
[frescor/fwp.git] / fwp / lib / mngt / fwp_participant.h
1 #ifndef _FWP_PARTICIPANT_H
2 #define _FWP_PARTICIPANT_H
3
4 #include "fwp_contract_table.h"
5 #include "ul_gavlcust.h"
6
7 typedef 
8 struct fwp_participant_id {
9         /*unsigned int  address_family */
10         unsigned int    node_id;
11         unsigned int    app_id;
12 } fwp_participant_id_t;
13
14 typedef 
15 /*struct fwp_participant_conf {*/
16 struct fwp_participant_info {
17         fwp_participant_id_t    id;
18         unsigned int            stream_id;
19 } fwp_participant_info_t;
20
21 typedef
22 struct fwp_participant {
23         fwp_participant_id_t    id;
24         unsigned int            stream_id;
25         fwp_endpoint_d_t        epointd;
26         fwp_vres_d_t            vresd;
27         gavl_node_t             participant_tree_node;
28         fwp_contract_table_t    contract_table;
29         /*fwp_resource_list     resource_list; or
30          *void                  *resources; or 
31          *void                  *data_priv; */
32 } fwp_participant_t;
33
34 static inline fwp_participant_t*  
35 fwp_participant_create(fwp_participant_info_t *participant_info)
36 {
37         fwp_participant_t *participant;
38
39         participant = (fwp_participant_t*) malloc(sizeof(fwp_participant_t));
40         if (!participant)
41                 return NULL;
42
43         participant->id = participant_info->id;
44         participant->stream_id = participant_info->stream_id;
45         return participant;
46 }
47
48 #endif /*_FWP_PARTICIPANT_H */