DVBCore  22.3.0
Open Source DVB Engine
hbbtv_api.h
Go to the documentation of this file.
1 /*******************************************************************************
2  * Copyright © 2017 The DTVKit Open Software Foundation Ltd (www.dtvkit.org)
3  * Copyright © 2011 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  *******************************************************************************/
24 // pre-processor mechanism so multiple inclusions don't cause compilation error
25 #ifndef _HBBTV_API_H
26 #define _HBBTV_API_H
27 
28 #include "techtype.h"
29 
30 //---Constant and macro definitions for public use-----------------------------
31 
32 //---Enumerations for public use-----------------------------------------------
33 
34 typedef enum
35 {
36  HBBTV_CHANNEL_CHANGE_SUCCEEDED,
37  HBBTV_CHANNEL_CHANGE_WRONG_TUNER,
38  HBBTV_CHANNEL_CHANGE_NO_SIGNAL,
39  HBBTV_CHANNEL_CHANGE_TUNER_IN_USE,
40  HBBTV_CHANNEL_CHANGE_PARENTAL_LOCKED,
41  HBBTV_CHANNEL_CHANGE_ENCRYPTED,
42  HBBTV_CHANNEL_CHANGE_UNKNOWN_CHANNEL,
43  HBBTV_CHANNEL_CHANGE_INTERRUPTED,
44  HBBTV_CHANNEL_CHANGE_RECORDING_IN_PROGRESS,
45  HBBTV_CHANNEL_CHANGE_INSUFFICIENT_RESOURCES,
46  HBBTV_CHANNEL_CHANGE_CHANNEL_NOT_IN_TS,
47  HBBTV_CHANNEL_CHANGE_UNKNOWN_ERROR
48 } E_HBBTV_CHANNEL_CHANGE_STATUS;
49 
50 typedef enum
51 {
52  HBBTV_RECORDING_NEWLY_SCHEDULED,
53  HBBTV_RECORDING_ABOUT_TO_START,
54  HBBTV_RECORDING_ACQUIRING_RESOURCES,
55  HBBTV_RECORDING_STARTED,
56  HBBTV_RECORDING_UPDATED,
57  HBBTV_RECORDING_COMPLETED,
58  HBBTV_RECORDING_PART_COMPLETED,
59  HBBTV_RECORDING_FAILED_RESOURCE_LIMITATION,
60  HBBTV_RECORDING_FAILED_INSUFFICIENT_STORAGE,
61  HBBTV_RECORDING_FAILED_TUNER_CONFLICT,
62  HBBTV_RECORDING_FAILED_NOT_ALLOWED,
63  HBBTV_RECORDING_FAILED_UNKNOWN_ERROR,
64  HBBTV_RECORDING_DELETED,
65  HBBTV_RECORDING_TS_STARTING, /* Timeshift related events */
66  HBBTV_RECORDING_TS_STARTED,
67  HBBTV_RECORDING_TS_STOPPED,
68  HBBTV_RECORDING_TS_NOT_POSSIBLE,
69  HBBTV_RECORDING_TS_NOT_ALLOWED,
70  HBBTV_RECORDING_TS_FAILED
71 } E_HBBTV_RECORDING_EVENT;
72 
73 //---Global type defs for public use-------------------------------------------
74 
75 //---Global Function prototypes for public use---------------------------------
76 
89 void HBBTV_ProcessAitSection(U16BIT service_id, U8BIT *data, U32BIT nbytes);
90 
96 
102 void HBBTV_NotifyParentalRatingChange(BOOLEAN blocked);
103 
112 void HBBTV_NotifyChannelChangeStatus(U16BIT onet_id, U16BIT trans_id, U16BIT serv_id,
113  E_HBBTV_CHANNEL_CHANGE_STATUS status);
114 
120 
126 void HBBTV_NotifyRecordingEvent(U32BIT id, E_HBBTV_RECORDING_EVENT event);
127 
132 void HBBTV_NotifyPlaySpeedChanged(S16BIT speed);
133 
134 #endif
void HBBTV_NotifyChannelChangeStatus(U16BIT onet_id, U16BIT trans_id, U16BIT serv_id, E_HBBTV_CHANNEL_CHANGE_STATUS status)
Notifies the HbbTV engine of a change in the status of the service identified by the specified DVB tr...
void HBBTV_ProcessAitSection(U16BIT service_id, U8BIT *data, U32BIT nbytes)
Requests the HbbTV engine to process the specified AIT. The HbbTV engine expects the relevant AITs on...
void HBBTV_NotifyProgrammeChanged(void)
Notifies the HbbTV engine that the present/following events have changed on the current service...
void HBBTV_NotifyParentalRatingChange(BOOLEAN blocked)
Notifies the HbbTV engine that the parental rating of the currently playing service has changed...
void HBBTV_NotifyServiceListChange(void)
Notifies the HbbTV ending that it must update Service list. This will cause the engine to subsequentl...
System Wide Global Technical Data Type Definitions.
void HBBTV_NotifyPlaySpeedChanged(S16BIT speed)
Notify the video broadcast object that the timeshift play speed has changed.
void HBBTV_NotifyRecordingEvent(U32BIT id, E_HBBTV_RECORDING_EVENT event)
Notifies the HbbTV engine of a recording event.