HbbTv  17.9.0
Open source HBBTV engine
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros
dsmclient.h
Go to the documentation of this file.
1 /*******************************************************************************
2  * Copyright © 2014 The DTVKit Open Software Foundation Ltd (www.dtvkit.org)
3  * Copyright © 2013 Ocean Blue Software Ltd
4  *
5  * This file is part of a DTVKit Software Component
6  * You are permitted to copy, modify or distribute this file subject to the terms
7  * of the DTVKit 1.0 Licence which can be found in licence.txt or at www.dtvkit.org
8  *
9  * THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND,
10  * EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES
11  * OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.
12  *
13  * If you or your organisation is not a member of DTVKit then you have access
14  * to this source code outside of the terms of the licence agreement
15  * and you are expected to delete this and any associated files immediately.
16  * Further information on DTVKit, membership and terms can be found at www.dtvkit.org
17  *******************************************************************************/
26 /* pre-processor mechanism so multiple inclusions don't cause compilation error*/
27 
28 #ifndef _DSMCLIENT_H
29 #define _DSMCLIENT_H
30 
31 #include "fs_types.h"
32 #include "dsm_control.h"
33 #include "dsm_client.h"
34 
35 
36 /*---Constant and macro definitions for public use-----------------------------*/
37 
38 /*---Enumerations for public use-----------------------------------------------*/
39 
40 /*---Global type defs for public use-------------------------------------------*/
41 
42 typedef struct s_stream_event *S_STREAM_EVENT_LIST;
43 
44 typedef struct s_stream_event
45 {
46  S_STREAM_EVENT_LIST next;
47  void *vb_obj;
48  S_HBBTV_STRING name;
49  U32BIT listener_id;
50  H_DsmEvent dsm_ehdl;
51  F_DSM_EVENT event_handler;
53 
54 
55 /*---Global Function prototypes for public use---------------------------------*/
56 
61 void HBBTV_DsmccInitialise(U32BIT task_priority);
62 
66 void HBBTV_DsmccTerminate(void);
67 
71 void HBBTV_DsmccStart(S_HBBTV_DVB_LOCATOR *p_dvb_locator);
72 
76 void HBBTV_DsmccStop(void);
77 
84 E_HBBTV_ERR HBBTV_DsmccSubscribe(U8BIT *path, S_STREAM_EVENT *event);
85 
91 
99 E_HBBTV_ERR HBBTV_DsmccSubscribeId(U16BIT association_tag, U16BIT event_id, S_STREAM_EVENT *event);
100 
101 #endif /* _DSMCLIENT_H */
Definition: hbbtv_types.h:159
void HBBTV_DsmccUnsubscribe(S_STREAM_EVENT *event)
Unsubscribes from the specified event.
Definition: dsmclient.c:389
Definition: dsmclient.h:44
void HBBTV_DsmccTerminate(void)
Terminates the DSMCC instance.
Definition: dsmclient.c:284
void HBBTV_DsmccStop(void)
Stops the DSMCC instance.
Definition: dsmclient.c:308
E_HBBTV_ERR HBBTV_DsmccSubscribe(U8BIT *path, S_STREAM_EVENT *event)
Subscribes to the specified event.
Definition: dsmclient.c:319
E_HBBTV_ERR HBBTV_DsmccSubscribeId(U16BIT association_tag, U16BIT event_id, S_STREAM_EVENT *event)
Subscribes to the specified event.
Definition: dsmclient.c:364
Definition: hbbtv_types.h:167
void HBBTV_DsmccStart(S_HBBTV_DVB_LOCATOR *p_dvb_locator)
Starts the DSMCC instance.
Definition: dsmclient.c:297
void HBBTV_DsmccInitialise(U32BIT task_priority)
Initialises the interface with the DSMCC engine.
Definition: dsmclient.c:248