Wasabi ExpressPlay SDK for Embedded Systems  1.23.0
WsbActionResultInfo.h
Go to the documentation of this file.
1 /*****************************************************************
2 |
3 | Wasabi - Action Result Info API
4 |
5 | $Id: WsbActionResultInfo.h 12695 2016-10-28 22:10:37Z hwa $
6 | Original author: Eric Swenson
7 |
8 | This software is provided to you pursuant to your agreement
9 | with Intertrust Technologies Corporation ("Intertrust").
10 | This software may be used only in accordance with the terms
11 | of the agreement.
12 |
13 | Copyright (c) 2009-2014 by Intertrust. All rights reserved.
14 |
15 ****************************************************************/
21 #ifndef _WSB_ACTION_RESULT_INFO_H_
22 #define _WSB_ACTION_RESULT_INFO_H_
23 
24 /*----------------------------------------------------------------------
25 | includes
26 +---------------------------------------------------------------------*/
27 #include "ShiData.h"
28 #include "WsbTypes.h"
29 #include "ShiAction.h"
31 #include "WsbMediaFile.h"
32 #include "ShiEngine.h"
33 
34 /*----------------------------------------------------------------------
35 | result codes
36 +---------------------------------------------------------------------*/
37 #define WSB_ERROR_ARI_HAS_CALLBACKS (WSB_ERROR_BASE_ARI - 0)
38 #define WSB_ERROR_ARI_INVALID_OBLIGATION (WSB_ERROR_BASE_ARI - 1)
39 #define WSB_ERROR_ARI_INVALID_CALLBACK (WSB_ERROR_BASE_ARI - 2)
40 #define WSB_ERROR_ARI_UNSUPPORTED_OBLIGATION (WSB_ERROR_BASE_ARI - 3)
41 
42 /*----------------------------------------------------------------------
43 | constants
44 +---------------------------------------------------------------------*/
45 // target portion for security class of secure content path in output control
46 #define WSB_ARI_TARGET_PORTION_ALL 0
47 #define WSB_ARI_TARGET_PORTION_AUDIO 1
48 #define WSB_ARI_TARGET_PORTION_VIDEO 2
49 
50 /*----------------------------------------------------------------------
51 | interfaces
52 +---------------------------------------------------------------------*/
53 #if defined(__cplusplus)
54 extern "C" {
55 #endif
56 
85 WSB_EXPORT WSB_Result
87  SHI_Engine* engine,
88  WSB_MediaFile* media_file,
89  SHI_Data** goto_url);
90 
95 
107 WSB_EXPORT WSB_Result
109  WSB_ActionResultInfo** info);
110 
118 WSB_EXPORT WSB_Boolean
120 
130 WSB_EXPORT WSB_Boolean
132 
144 WSB_EXPORT WSB_Boolean
146 
155 WSB_EXPORT WSB_Boolean
157 
167 WSB_EXPORT WSB_Boolean
169 
178 WSB_EXPORT WSB_Boolean
180 
190 WSB_EXPORT WSB_Boolean
192 
207 WSB_EXPORT WSB_Cardinal
209  WSB_Boolean mandatory_only);
210 
225 WSB_EXPORT WSB_Result
227  WSB_Boolean mandatory_only,
228  WSB_Ordinal indx,
229  WSB_ActionResultConstraint** constraint);
230 
261 WSB_EXPORT WSB_Result
263  const WSB_Int32 sec_classes[],
264  WSB_UInt32 num_sec_classes,
265  const char* content_id,
266  WSB_Int32 target_portion);
267 
296 WSB_EXPORT WSB_Result
298 
304 WSB_EXPORT WSB_Result
306 
309 #if defined(__cplusplus)
310 }
311 #endif
312 
313 #endif /* _WSB_ACTION_RESULT_INFO_H_ */
struct WSB_ActionResultConstraint WSB_ActionResultConstraint
A WSB_ActionResultConstraint object represents a single constraint associated with a SHI_ActionResult...
Definition: WsbActionResultConstraint.h:72
Actions.
Wasabi Action Result Constraint API.
WSB_EXPORT WSB_Boolean WSB_ActionResultInfo_IsPermanent(WSB_ActionResultInfo *info)
Returns whether the SHI_ActionResult grants permanent rights to access the content.
WSB_EXPORT WSB_Boolean WSB_ActionResultInfo_MustAccept(WSB_ActionResultInfo *info)
Returns whether the caller must explicitly accept the constraints (obligations and/or callbacks) spec...
struct SHI_Engine SHI_Engine
A SHI_Engine object is the initial point of interaction between an application and a DRM Engine...
Definition: ShiEngine.h:331
WSB_EXPORT WSB_Boolean WSB_ActionResultInfo_HasMandatoryObligations(WSB_ActionResultInfo *info)
Returns WSB_TRUE if the SHI_ActionResult specifies mandatory obligations.
WSB_Boolean
Boolean type used for variables that can be true (WSB_TRUE) or false (WSB_FALSE). ...
Definition: WsbTypes.h:71
WSB_UInt32 WSB_Ordinal
An unsigned integer that represents a position in a sequence (such as an index into a list of element...
Definition: WsbTypes.h:127
struct WSB_MediaFile WSB_MediaFile
A WSB_MediaFile object represents information about a media file.
Definition: WsbMediaFile.h:37
WSB_EXPORT WSB_Result WSB_ActionResultInfo_CheckHdcpSrm(WSB_ActionResultInfo *info)
Checks High-bandwidth Digital Content Protection System Renewability Message (HDCP-SRM) supported by ...
WSB_EXPORT WSB_Boolean WSB_ActionResultInfo_HasMandatoryCallbacks(WSB_ActionResultInfo *info)
Returns WSB_TRUE if the SHI_ActionResult specifies mandatory callbacks.
WSB_EXPORT WSB_Boolean WSB_ActionResultInfo_HasObligations(WSB_ActionResultInfo *info)
Returns WSB_TRUE if the SHI_ActionResult specifies obligations.
DRM Engine.
struct WSB_ActionResultInfo WSB_ActionResultInfo
A WSB_ActionResultInfo object represents information about a SHI_ActionResult.
Definition: WsbActionResultInfo.h:94
WSB_EXPORT WSB_Cardinal WSB_ActionResultInfo_GetConstraintCount(WSB_ActionResultInfo *info, WSB_Boolean mandatory_only)
Returns the count of constraints, which includes obligations and callbacks.
WSB_EXPORT WSB_Boolean WSB_ActionResultInfo_IsGranted(WSB_ActionResultInfo *info)
Returns whether the SHI_ActionResult grants access to the associated content keys.
WSB_UInt32 WSB_Cardinal
An unsigned integer used to represent a quantity that can be counted (such as a number of elements in...
Definition: WsbTypes.h:121
int WSB_Result
Signed integer value representing a function or method result (return value).
Definition: WsbTypes.h:83
WSB_EXPORT WSB_Boolean WSB_ActionResultInfo_HasCallbacks(WSB_ActionResultInfo *info)
Returns WSB_TRUE if the SHI_ActionResult specifies callbacks.
WSB_EXPORT WSB_Result WSB_ActionResultInfo_Create(SHI_ActionResult *action_result, WSB_ActionResultInfo **info)
Creates an instance of a WSB_ActionResultInfo object, which analyzes the passed-in SHI_ActionResult o...
unsigned int WSB_UInt32
32-bit (or more) unsigned integer
Definition: WsbTypes.h:36
Wasabi Media File API.
WSB_EXPORT WSB_Result WSB_ActionResultInfo_GetConstraintByIndex(WSB_ActionResultInfo *info, WSB_Boolean mandatory_only, WSB_Ordinal indx, WSB_ActionResultConstraint **constraint)
Returns a constraint, specified by index, from all constraints reflected in the SHI_ActionResult obje...
WSB_EXPORT WSB_Result WSB_ActionResultInfo_Destroy(WSB_ActionResultInfo *store)
Destroys the WSB_ActionResultInfo object.
struct SHI_Data SHI_Data
A SHI_Data object represents a typed data object.
Definition: EmbProcessor.h:231
struct SHI_ActionResult SHI_ActionResult
A SHI_ActionResult object represents the result returned by several different SHI_Action methods...
Definition: ShiAction.h:444
signed int WSB_Int32
32-bit (or more) signed integer
Definition: WsbTypes.h:37
WSB_EXPORT WSB_Result WSB_ExplainActionResultFailure(SHI_ActionResult *action_result, SHI_Engine *engine, WSB_MediaFile *media_file, SHI_Data **goto_url)
Explains the action result failure (action is not granted) with a meaningful error code and an option...
Wasabi Result.
Generic Data Objects.
WSB_EXPORT WSB_Result WSB_ActionResultInfo_CheckSecurityClasses(WSB_ActionResultInfo *info, const WSB_Int32 sec_classes[], WSB_UInt32 num_sec_classes, const char *content_id, WSB_Int32 target_portion)
Checks the security classes supported by the host application/device can satisfy the mandatory obliga...