Pepper_42_C_interfaces
ppb_program_schedule_samsung.h
Go to the documentation of this file.
1 /* Copyright (c) 2015 Samsung Electronics. All rights reserved.
2  */
3 
4 /* From samsung/ppb_program_schedule_samsung.idl,
5  * modified Tue Jan 12 10:16:16 2016.
6  */
7 
8 #ifndef PPAPI_C_SAMSUNG_PPB_PROGRAM_SCHEDULE_SAMSUNG_H_
9 #define PPAPI_C_SAMSUNG_PPB_PROGRAM_SCHEDULE_SAMSUNG_H_
10 
11 #include "ppapi/c/pp_array_output.h"
12 #include "ppapi/c/pp_bool.h"
13 #include "ppapi/c/pp_completion_callback.h"
14 #include "ppapi/c/pp_macros.h"
15 #include "ppapi/c/pp_resource.h"
16 #include "ppapi/c/pp_stdint.h"
17 #include "ppapi/c/pp_time.h"
18 #include "ppapi/c/pp_var.h"
19 #include "ppapi/c/samsung/pp_epg_event_samsung.h"
20 
21 #define PPB_PROGRAMSCHEDULE_SAMSUNG_INTERFACE_0_2 \
22  "PPB_ProgramSchedule_Samsung;0.2"
23 #define PPB_PROGRAMSCHEDULE_SAMSUNG_INTERFACE \
24  PPB_PROGRAMSCHEDULE_SAMSUNG_INTERFACE_0_2
25 
26 /**
27  * @file
28  * This file defines the <code>PPB_ProgramSchedule_Samsung</code> interface.
29  */
30 
31 
32 /**
33  * @addtogroup Interfaces
34  * @{
35  */
36 /**
37  * Interface used to retrieve EPG events from transport stream.
38  */
40  /**
41  * IsProgramSchedule() checks if provided resource is program schedule.
42  *
43  * @param[in] resource A <code>PP_Resource</code> identifying resource that
44  * will be checked.
45  *
46  * @return <code>PP_TRUE<code> if resource is identifying program schedule and
47  * <code>PP_FALSE<code> otherwise.
48  */
50  /**
51  * GetID() provides ID of service identified by resource.
52  *
53  * @param[in] resource A <code>PP_Resource</code> identifying program
54  * schedule resource.
55  *
56  * @return <code>uint64_t<code> with ID of service.
57  */
58  uint64_t (*GetID)(PP_Resource resource);
59  /**
60  * GetName() provides name of service identified by resource.
61  *
62  * @param[in] resource A <code>PP_Resource</code> identifying program
63  * schedule resource.
64  *
65  * @return <code>PP_Var<code> of type string, with name of service.
66  */
67  struct PP_Var (*GetName)(PP_Resource resource);
68  /**
69  * GetType() provides type of service identified by resource.
70  *
71  * @param[in] resource A <code>PP_Resource</code> identifying program
72  * schedule resource.
73  *
74  * @return <code>PP_ServiceType<code> with type of service. More information
75  * in pp_epg_event.h.
76  */
78  /**
79  * GetScheduledEvents() provides array of EPG events from scheduled table
80  * for service associated whit program schedule resource.
81  *
82  * @param[in] resource A <code>PP_Resource</code> identifying program
83  * schedule resource.
84  *
85  * @param[in] start_time <code>PP_Time</code> with beginning of
86  * requested schedule.
87  *
88  * @param[in] end_time <code>PP_Time</code> with end of requested schedule.
89  *
90  * @param[in] output <code>PP_ArrayOutput</code> in which
91  * <code>PP_EPGEvent</code> will be returned, ref count for vars in
92  * PP_EPGEvent is increased on behalf of the plugin.
93  *
94  * @param[in] callback <code>PP_CompletionCallback</code> that will be run
95  * when output will be ready.
96  *
97  * @return <code>PP_Error<code> with error code.
98  */
99  int32_t (*GetScheduledEvents)(PP_Resource resource,
100  PP_Time start_time,
101  PP_Time end_time,
102  struct PP_ArrayOutput output,
103  struct PP_CompletionCallback callback);
104  /**
105  * GetPresentFollowing() provides array of EPG events from present/following
106  * table for service associated whit program schedule resource.
107  *
108  * @param[in] resource A <code>PP_Resource</code> identifying program
109  * schedule resource.
110  *
111  * @param[in] output <code>PP_ArrayOutput</code> in which
112  * <code>PP_EPGEvent</code> will be returned, ref count for vars in
113  * PP_EPGEvent is increased on behalf of the plugin.
114  *
115  * @param[in] callback <code>PP_CompletionCallback</code> that will be run
116  * when output will be ready.
117  *
118  * @return <code>PP_Error<code> with error code.
119  */
120  int32_t (*GetPresentFollowing)(PP_Resource resource,
121  struct PP_ArrayOutput output,
122  struct PP_CompletionCallback callback);
123  /**
124  * SetRatingLock() sets lock for displaying programs of certain rating.
125  *
126  * @param[in] resource A <code>PP_Resource</code> identifying program
127  * schedule resource.
128  *
129  * @param[in] program <code>PP_EPGInfo</code> from which rating is taken
130  * to be edited.
131  *
132  * @param[in] state <code>PP_Bool</code> of lock to be set.
133  *
134  * @param[in] callback <code>PP_CompletionCallback</code> that will be run
135  * when output will be ready.
136  *
137  * @return <code>PP_Error<code> with error code.
138  */
139  int32_t (*SetRatingLock)(PP_Resource resource,
140  const struct PP_RatingInfo* rating_info,
141  PP_Bool set_lock,
142  struct PP_CompletionCallback callback);
143  /**
144  * GetRatingLock() gets lock status for displaying programs of certain rating.
145  *
146  * @param[in] resource A <code>PP_Resource</code> identifying program
147  * schedule resource.
148  *
149  * @param[in] program <code>PP_EPGInfo</code> from which rating is taken
150  * to be edited.
151  *
152  * @param[out] state <code>PP_Bool</code> of the lock.
153  *
154  * @param[in] callback <code>PP_CompletionCallback</code> that will be run
155  * when output will be ready.
156  *
157  * @return <code>PP_Error<code> with error code.
158  */
159  int32_t (*GetRatingLock)(PP_Resource resource,
160  const struct PP_RatingInfo* rating_info,
161  PP_Bool* lock_state,
162  struct PP_CompletionCallback callback);
163 };
164 
166 /**
167  * @}
168  */
169 
170 #endif /* PPAPI_C_SAMSUNG_PPB_PROGRAM_SCHEDULE_SAMSUNG_H_ */
171 
int32_t(* SetRatingLock)(PP_Resource resource, const struct PP_RatingInfo *rating_info, PP_Bool set_lock, struct PP_CompletionCallback callback)
double PP_Time
Definition: pp_time.h:29
PP_ServiceType(* GetType)(PP_Resource resource)
int32_t PP_Resource
Definition: pp_resource.h:40
uint64_t(* GetID)(PP_Resource resource)
int32_t(* GetRatingLock)(PP_Resource resource, const struct PP_RatingInfo *rating_info, PP_Bool *lock_state, struct PP_CompletionCallback callback)
Definition: pp_var.h:166
int32_t(* GetPresentFollowing)(PP_Resource resource, struct PP_ArrayOutput output, struct PP_CompletionCallback callback)
PP_Bool(* IsProgramSchedule)(PP_Resource resource)
struct PP_Var(* GetName)(PP_Resource resource)
int32_t(* GetScheduledEvents)(PP_Resource resource, PP_Time start_time, PP_Time end_time, struct PP_ArrayOutput output, struct PP_CompletionCallback callback)
PP_Bool
Definition: pp_bool.h:30
PP_ServiceType