Wasabi ExpressPlay SDK for Embedded Systems
1.10
Main Page
Modules
Data Structures
Files
File List
Globals
Client
Source
Interface
Core
WsbElements.h
Go to the documentation of this file.
1
/*****************************************************************
2
|
3
| Wasabi - Elements
4
|
5
| $Id: WsbElements.h 10793 2014-06-25 12:46:08Z jebaseelir $
6
| Original author: Gilles Boccon-Gibod
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) 2003-2014 by Intertrust. All rights reserved.
14
|
15
****************************************************************/
16
22
#ifndef _WSB_ELEMENTS_H_
23
#define _WSB_ELEMENTS_H_
24
25
/*----------------------------------------------------------------------
26
| includes
27
+---------------------------------------------------------------------*/
28
#include "WsbConfig.h"
29
#include "
WsbTypes.h
"
30
31
/*----------------------------------------------------------------------
32
| types
33
+---------------------------------------------------------------------*/
37
typedef
struct
WSB_Element
WSB_Element
;
38
39
/*----------------------------------------------------------------------
40
| constants
41
+---------------------------------------------------------------------*/
45
typedef
enum
{
46
WSB_ELEMENT_TYPE_OBJECT
= 0,
47
WSB_ELEMENT_TYPE_STRING
,
48
WSB_ELEMENT_TYPE_INTEGER
,
49
WSB_ELEMENT_TYPE_FLOAT
,
50
WSB_ELEMENT_TYPE_ARRAY
,
51
WSB_ELEMENT_TYPE_BOOLEAN
,
52
WSB_ELEMENT_TYPE_NULL
53
}
WSB_ElementType
;
54
55
/*----------------------------------------------------------------------
56
| prototypes
57
+---------------------------------------------------------------------*/
58
#ifdef __cplusplus
59
extern
"C"
{
60
#endif
/* __cplusplus */
61
70
WSB_EXPORT
void
71
WSB_Element_Release
(
WSB_Element
*
self
);
72
76
WSB_EXPORT
WSB_Element
*
77
WSB_Element_GetChild
(
WSB_Element
*
self
,
const
char
* name);
78
82
WSB_EXPORT
WSB_Element
*
83
WSB_Element_GetChildAt
(
WSB_Element
*
self
,
WSB_Ordinal
indx);
84
88
WSB_EXPORT
WSB_Cardinal
89
WSB_Element_GetChildCount
(
WSB_Element
*
self
);
90
94
WSB_EXPORT
WSB_Element
*
95
WSB_Element_GetParent
(
WSB_Element
*
self
);
96
100
WSB_EXPORT
const
char
*
101
WSB_Element_GetName
(
WSB_Element
*
self
);
102
106
WSB_EXPORT
WSB_ElementType
107
WSB_Element_GetType
(
WSB_Element
*
self
);
108
112
WSB_EXPORT
WSB_Int64
113
WSB_Element_AsInteger
(
WSB_Element
*
self
);
114
118
WSB_EXPORT
double
119
WSB_Element_AsFloat
(
WSB_Element
*
self
);
120
124
WSB_EXPORT
WSB_Boolean
125
WSB_Element_AsBoolean
(
WSB_Element
*
self
);
126
130
WSB_EXPORT
const
char
*
131
WSB_Element_AsString
(
WSB_Element
*
self
);
132
136
WSB_EXPORT
WSB_Result
137
WSB_Element_Serialize
(
WSB_Element
*
self
,
char
* buffer,
unsigned
int
* buffer_size);
138
142
WSB_EXPORT
WSB_Result
143
WSB_Element_Clone
(
WSB_Element
*
self
,
WSB_Element
** clone);
144
147
#ifdef __cplusplus
148
}
149
#endif
/* __cplusplus */
150
151
#endif
/* _WSB_ELEMENTS_H_ */