exip  Alpha 0.5.4
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
build/gcc/pc/exipConfig.h
Go to the documentation of this file.
1 /*==================================================================*\
2 | EXIP - Embeddable EXI Processor in C |
3 |--------------------------------------------------------------------|
4 | This work is licensed under BSD 3-Clause License |
5 | The full license terms and conditions are located in LICENSE.txt |
6 \===================================================================*/
7 
19 #include <stdlib.h>
20 
21 #ifndef EXIPCONFIG_H_
22 #define EXIPCONFIG_H_
23 
24 #define ON 1
25 #define OFF 0
26 
46 #define EXIP_DEBUG ON
47 #define EXIP_DEBUG_LEVEL INFO
48 
49 #define DEBUG_STREAM_IO OFF
50 #define DEBUG_COMMON OFF
51 #define DEBUG_CONTENT_IO OFF
52 #define DEBUG_GRAMMAR OFF
53 #define DEBUG_GRAMMAR_GEN OFF
54 #define DEBUG_STRING_TBLS OFF
55 
56 #if EXIP_DEBUG != ON
57 # define NDEBUG
58 #endif
59 
60 #include <assert.h>
61 
72 #define EXIP_MALLOC malloc
73 #define EXIP_REALLOC realloc
74 #define EXIP_MFREE free
75 
83 #define HASH_TABLE_USE ON
84 #define INITIAL_HASH_TABLE_SIZE 6151
85 #define MAX_HASH_TABLE_SIZE 32000
86 
88 #define DYN_ARRAY_USE ON
89 
90 // NOTE: The GR_VOID_NON_TERMINAL should be set to the maximum 24 bit unsigned value in case the
91 // SMALL_INDEX_MAX is 32 bits or bigger
92 #define GR_VOID_NON_TERMINAL 0xFFFFFF
93 
108 #define EXIP_IMPLICIT_DATA_TYPE_CONVERSION ON
109 
127 #define EXI_PROFILE_DEFAULT OFF
128 
129 #if EXI_PROFILE_DEFAULT
130 # define VALUE_CROSSTABLE_USE OFF
131 # define BUILD_IN_GRAMMARS_USE OFF
132 #else
133 // Configure here which of the EXI features/components to be included in the compilation:
134 
135 /* Whether to implement the local value string table.
136  * NOTE: EXI streams that are not encoded using this option cannot be decoded correctly
137  * and will return an error. The opposite is true however - a stream encoded with no
138  * local value tables is valid EXI stream can be decoded with full-fledged EXI processor.
139  * Disabling the local values indexing is used in EXI Profile
140  * and can possibly found use in other application profiles of the EXI spec. */
141 #define VALUE_CROSSTABLE_USE ON
142 
143 /* Whether to enable the use of build-in grammars.
144  * NOTE: Only useful for schema STRICT mode processing without schema extension points
145  * or so called wildcard elements and attributes. */
146 #define BUILD_IN_GRAMMARS_USE ON
147 #endif
148 
149 
150 
151 #endif /* EXIPCONFIG_H_ */