OpenV2G
appHandEXIDatatypes.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2007-2018 Siemens AG
3  *
4  * This program is free software: you can redistribute it and/or modify
5  * it under the terms of the GNU Lesser General Public License as published
6  * by the Free Software Foundation, either version 3 of the License, or
7  * (at your option) any later version.
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  * GNU Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public License
15  * along with this program. If not, see <http://www.gnu.org/licenses/>.
16  */
17 
18 /*******************************************************************
19  *
20  * @author Daniel.Peintner.EXT@siemens.com
21  * @version 0.9.4
22  * @contact Richard.Kuntschke@siemens.com
23  *
24  * <p>Code generated by EXIdizer</p>
25  * <p>Schema: V2G_CI_AppProtocol.xsd</p>
26  *
27  *
28  ********************************************************************/
29 
30 
31 
38 #ifndef EXI_appHand_DATATYPES_H
39 #define EXI_appHand_DATATYPES_H
40 
41 #ifdef __cplusplus
42 extern "C" {
43 #endif
44 
45 
46 #include <stdint.h>
47 
48 #include "EXITypes.h"
49 
50 
51 /* Datatype definitions and structs for given XML Schema definitions */
52 
53 #define UNION_YES 1
54 #define UNION_NO 2
55 #define SAVE_MEMORY_WITH_UNNAMED_UNION UNION_YES
56 
57 /* Complex type name='urn:iso:15118:2:2010:AppProtocol,AppProtocolType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(ProtocolNamespace,VersionNumberMajor,VersionNumberMinor,SchemaID,Priority)', derivedBy='RESTRICTION'. */
58 #define appHandAppProtocolType_ProtocolNamespace_CHARACTERS_SIZE 100 /* XML schema facet maxLength for urn:iso:15118:2:2010:AppProtocol,protocolNamespaceType is 100 */
60  /* element: ProtocolNamespace, urn:iso:15118:2:2010:AppProtocol,protocolNamespaceType */
61  struct {
63  uint16_t charactersLen;
65  /* element: VersionNumberMajor, http://www.w3.org/2001/XMLSchema,unsignedInt */
66  uint32_t VersionNumberMajor ;
67  /* element: VersionNumberMinor, http://www.w3.org/2001/XMLSchema,unsignedInt */
68  uint32_t VersionNumberMinor ;
69  /* element: SchemaID, urn:iso:15118:2:2010:AppProtocol,idType */
70  uint8_t SchemaID ;
71  /* element: Priority, urn:iso:15118:2:2010:AppProtocol,priorityType */
72  uint8_t Priority ;
73 };
74 
75 typedef enum {
80 
81 /* Complex type name='urn:iso:15118:2:2010:AppProtocol,#AnonType_supportedAppProtocolRes', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(ResponseCode,SchemaID{0-1})', derivedBy='RESTRICTION'. */
83  /* element: ResponseCode, urn:iso:15118:2:2010:AppProtocol,responseCodeType */
85  /* element: SchemaID, urn:iso:15118:2:2010:AppProtocol,idType */
86  uint8_t SchemaID ;
87  unsigned int SchemaID_isUsed:1;
88 };
89 
90 /* Complex type name='urn:iso:15118:2:2010:AppProtocol,#AnonType_supportedAppProtocolReq', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(AppProtocol{1-20})', derivedBy='RESTRICTION'. */
91 #define appHandAnonType_supportedAppProtocolReq_AppProtocol_ARRAY_SIZE 5
93  /* element: AppProtocol, Complex type name='urn:iso:15118:2:2010:AppProtocol,AppProtocolType', base type name='anyType', content type='ELEMENT', isAbstract='false', hasTypeId='false', final='0', block='0', particle='(ProtocolNamespace,VersionNumberMajor,VersionNumberMinor,SchemaID,Priority)', derivedBy='RESTRICTION'. */
94  struct {
96  uint16_t arrayLen;
97  } AppProtocol;
98 };
99 
100 
101 
102 
103 
104 /* Possible root elements of EXI Document */
106 #if SAVE_MEMORY_WITH_UNNAMED_UNION == UNION_YES
107  union {
108 #endif /* SAVE_MEMORY_WITH_UNNAMED_UNION == UNION_YES */
109  struct appHandAnonType_supportedAppProtocolReq supportedAppProtocolReq ;
110  struct appHandAnonType_supportedAppProtocolRes supportedAppProtocolRes ;
111 #if SAVE_MEMORY_WITH_UNNAMED_UNION == UNION_YES
112  };
113 #endif /* SAVE_MEMORY_WITH_UNNAMED_UNION == UNION_YES */
116 
117 
119 };
120 
121 /* Initialization methods for structs */
122 
123 void init_appHandEXIDocument(struct appHandEXIDocument* exiDoc);
127 
128 
129 #ifdef __cplusplus
130 }
131 #endif
132 
133 #endif
uint32_t VersionNumberMinor
Definition: appHandEXIDatatypes.h:68
void init_appHandEXIDocument(struct appHandEXIDocument *exiDoc)
Definition: appHandEXIDatatypes.c:43
Definition: appHandEXIDatatypes.h:82
Definition: appHandEXIDatatypes.h:78
void init_appHandAnonType_supportedAppProtocolReq(struct appHandAnonType_supportedAppProtocolReq *appHandAnonType_supportedAppProtocolReq)
Definition: appHandEXIDatatypes.c:51
Definition: appHandEXIDatatypes.h:59
uint8_t Priority
Definition: appHandEXIDatatypes.h:72
uint32_t VersionNumberMajor
Definition: appHandEXIDatatypes.h:66
#define appHandAppProtocolType_ProtocolNamespace_CHARACTERS_SIZE
Definition: appHandEXIDatatypes.h:58
Definition: appHandEXIDatatypes.h:92
void init_appHandAnonType_supportedAppProtocolRes(struct appHandAnonType_supportedAppProtocolRes *appHandAnonType_supportedAppProtocolRes)
Definition: appHandEXIDatatypes.c:55
Definition: appHandEXIDatatypes.h:105
uint32_t exi_string_character_t
EXI string character.
Definition: EXITypes.h:271
Basic type definitions and structs.
uint8_t SchemaID
Definition: appHandEXIDatatypes.h:86
unsigned int supportedAppProtocolRes_isUsed
Definition: appHandEXIDatatypes.h:115
appHandresponseCodeType
Definition: appHandEXIDatatypes.h:75
int _warning_
Definition: appHandEXIDatatypes.h:118
struct appHandAppProtocolType::@0 ProtocolNamespace
appHandresponseCodeType ResponseCode
Definition: appHandEXIDatatypes.h:84
exi_string_character_t characters[appHandAppProtocolType_ProtocolNamespace_CHARACTERS_SIZE]
Definition: appHandEXIDatatypes.h:62
void init_appHandAppProtocolType(struct appHandAppProtocolType *appHandAppProtocolType)
Definition: appHandEXIDatatypes.c:48
uint16_t arrayLen
Definition: appHandEXIDatatypes.h:96
Definition: appHandEXIDatatypes.h:76
uint8_t SchemaID
Definition: appHandEXIDatatypes.h:70
unsigned int SchemaID_isUsed
Definition: appHandEXIDatatypes.h:87
#define appHandAnonType_supportedAppProtocolReq_AppProtocol_ARRAY_SIZE
Definition: appHandEXIDatatypes.h:91
unsigned int supportedAppProtocolReq_isUsed
Definition: appHandEXIDatatypes.h:114
uint16_t charactersLen
Definition: appHandEXIDatatypes.h:63