\r\n

51Degrees Device Detection C/C++  4.3Newer Version 4.4

A device detection library that is used natively or by 51Degrees products

fiftyone.h

1 /* *********************************************************************
2  * This Original Work is copyright of 51 Degrees Mobile Experts Limited.
3  * Copyright 2019 51 Degrees Mobile Experts Limited, 5 Charlotte Close,
4  * Caversham, Reading, Berkshire, United Kingdom RG4 7BY.
5  *
6  * This Original Work is licensed under the European Union Public Licence (EUPL)
7  * v.1.2 and is subject to its terms as set out below.
8  *
9  * If a copy of the EUPL was not distributed with this file, You can obtain
10  * one at https://opensource.org/licenses/EUPL-1.2.
11  *
12  * The 'Compatible Licences' set out in the Appendix to the EUPL (as may be
13  * amended by the European Commission) shall be deemed incompatible for
14  * the purposes of the Work and the provisions of the compatibility
15  * clause in Article 5 of the EUPL shall not apply.
16  *
17  * If using the Work as, or as part of, a network application, by
18  * including the attribution notice(s) required under Article 5 of the EUPL
19  * in the end user terms of the application under an appropriate heading,
20  * such notice(s) shall fulfill the requirements of that article.
21  * ********************************************************************* */
22 
47 #ifndef FIFTYONE_DEGREES_SYNONYM_COMMON_INCLUDED
48 #define FIFTYONE_DEGREES_SYNONYM_COMMON_INCLUDED
49 
50 #include "exceptions.h"
51 #include "cache.h"
52 #include "collection.h"
53 #include "component.h"
54 #include "config.h"
55 #include "data.h"
56 #include "dataset.h"
57 #include "date.h"
58 #include "evidence.h"
59 #include "file.h"
60 #include "headers.h"
61 #include "list.h"
62 #include "memory.h"
63 #include "pool.h"
64 #include "properties.h"
65 #include "resource.h"
66 #include "results.h"
67 #include "status.h"
68 #include "dataset.h"
69 #include "results.h"
70 #include "config.h"
71 #include "string.h"
72 #include "property.h"
73 #include "value.h"
74 #include "component.h"
75 #include "profile.h"
76 #include "overrides.h"
77 #include "tree.h"
78 #include "profile.h"
79 #include "ip.h"
80 #include "float.h"
81 #include "coordinate.h"
82 #include "pseudoheader.h"
83 #include "snprintf.h"
84 #include "bool.h"
85 
90 #define MAP_TYPE(t) typedef fiftyoneDegrees##t t;
92 /* <-- only one asterisk to avoid inclusion in documentation
93  * Most mappings simply remove fiftyoneDegrees. However in some cases even
94  * shorter names make sense. These are provided before the general references
95  * to MAP_TYPE.
96  */
97 
100 /* <-- only one asterisk to avoid inclusion in documentation
101  * General references to MAP_TYPE used to strip fiftyoneDegrees as a prefix
102  * from types.
103  */
104 
108 #ifndef FIFTYONE_DEGREES_MEMORY_ONLY
113 #endif
174 
175 #define ProfileGetOffsetForProfileId fiftyoneDegreesProfileGetOffsetForProfileId
176 #define OverrideValuesAdd fiftyoneDegreesOverrideValuesAdd
177 #define ExceptionGetMessage fiftyoneDegreesExceptionGetMessage
178 #define ProfileGetByProfileId fiftyoneDegreesProfileGetByProfileId
179 #define ProfileGetByIndex fiftyoneDegreesProfileGetByIndex
180 #define OverridesAdd fiftyoneDegreesOverridesAdd
181 #define OverrideProfileIds fiftyoneDegreesOverrideProfileIds
182 #define ComponentInitList fiftyoneDegreesComponentInitList
183 #define CollectionGetInteger32 fiftyoneDegreesCollectionGetInteger32
184 #define PropertyGet fiftyoneDegreesPropertyGet
185 #define ProfileIterateValuesForProperty fiftyoneDegreesProfileIterateValuesForProperty
186 #define ProfileIterateProfilesForPropertyAndValue fiftyoneDegreesProfileIterateProfilesForPropertyAndValue
187 #define PropertiesGetPropertyIndexFromName fiftyoneDegreesPropertiesGetPropertyIndexFromName
188 #define TreeIterate fiftyoneDegreesTreeIterateNodes
189 #define TreeCount fiftyoneDegreesTreeCount
190 #define TreeDelete fiftyoneDegreesTreeDelete
191 #define TreeInsert fiftyoneDegreesTreeInsert
192 #define TreeFind fiftyoneDegreesTreeFind
193 #define TreeNodeInit fiftyoneDegreesTreeNodeInit
194 #define TreeNodeRemove fiftyoneDegreesTreeNodeRemove
195 #define TreeRootInit fiftyoneDegreesTreeRootInit
196 #define OverridesGetOverridingRequiredPropertyIndex fiftyoneDegreesOverridesGetOverridingRequiredPropertyIndex
197 #define OverridePropertiesCreate fiftyoneDegreesOverridePropertiesCreate
198 #define EvidenceCreate fiftyoneDegreesEvidenceCreate
199 #define EvidenceFree fiftyoneDegreesEvidenceFree
200 #define OverridesGetOverridingRequiredPropertyIndex fiftyoneDegreesOverridesGetOverridingRequiredPropertyIndex
201 #define StringCompareLength fiftyoneDegreesStringCompareLength
202 #define StringCompare fiftyoneDegreesStringCompare
203 #define StringSubString fiftyoneDegreesStringSubString
204 #define OverridesExtractFromEvidence fiftyoneDegreesOverridesExtractFromEvidence
205 #define EvidenceIterate fiftyoneDegreesEvidenceIterate
206 #define CacheRelease fiftyoneDegreesCacheRelease
207 #define DataReset fiftyoneDegreesDataReset
208 #define CacheFree fiftyoneDegreesCacheFree
209 #define FileHandleGet fiftyoneDegreesFileHandleGet
210 #define FileHandleRelease fiftyoneDegreesFileHandleRelease
211 #define DataMalloc fiftyoneDegreesDataMalloc
212 #define CacheGet fiftyoneDegreesCacheGet
213 #define CacheCreate fiftyoneDegreesCacheCreate
214 #define MemoryAdvance fiftyoneDegreesMemoryAdvance
215 #define MemoryTrackingReset fiftyoneDegreesMemoryTrackingReset
216 #define MemoryTrackingGetMax fiftyoneDegreesMemoryTrackingGetMax
217 #define MemoryTrackingGetAllocated fiftyoneDegreesMemoryTrackingGetAllocated
218 #define SetUpMemoryTracking fiftyoneDegreesSetUpMemoryTracking
219 #define UnsetMemoryTracking fiftyoneDegreesUnsetMemoryTracking
220 #define Malloc fiftyoneDegreesMalloc
221 #define MallocAligned fiftyoneDegreesMallocAligned
222 #define Free fiftyoneDegreesFree
223 #define FreeAligned fiftyoneDegreesFreeAligned
224 #define ResourceHandleIncUse fiftyoneDegreesResourceHandleIncUse
225 #define PropertiesDefault fiftyoneDegreesPropertiesDefault
226 #define ListGetAsString fiftyoneDegreesListGetAsString
227 #define ListAdd fiftyoneDegreesListAdd
228 #define ListInit fiftyoneDegreesListInit
229 #define ListFree fiftyoneDegreesListFree
230 #define FileGetExistingTempFile fiftyoneDegreesFileGetExistingTempFile
231 #define FileDeleteUnusedTempFiles fiftyoneDegreesFileDeleteUnusedTempFiles
232 #define FileCreateTempFile fiftyoneDegreesFileCreateTempFile
233 #define HeadersFree fiftyoneDegreesHeadersFree
234 #define PropertiesFree fiftyoneDegreesPropertiesFree
235 #define FilePoolRelease fiftyoneDegreesFilePoolRelease
236 #define FileDelete fiftyoneDegreesFileDelete
237 #define FilePoolReset fiftyoneDegreesFilePoolReset
238 #define PropertiesCreate fiftyoneDegreesPropertiesCreate
239 #define HeadersIsPseudo fiftyoneDegreesHeadersIsPseudo
240 #define HeadersCreate fiftyoneDegreesHeadersCreate
241 #define HeadersGetHeaderFromUniqueId fiftyoneDegreesHeadersGetHeaderFromUniqueId
242 #define PseudoHeadersAddEvidence fiftyoneDegreesPseudoHeadersAddEvidence
243 #define PseudoHeadersRemoveEvidence fiftyoneDegreesPseudoHeadersRemoveEvidence
244 #define FileReadToByteArray fiftyoneDegreesFileReadToByteArray
245 #define ResourceHandleDecUse fiftyoneDegreesResourceHandleDecUse
246 #define ResourceReplace fiftyoneDegreesResourceReplace
247 #define StatusGetMessage fiftyoneDegreesStatusGetMessage
248 #define FileOpen fiftyoneDegreesFileOpen
249 #define PoolInit fiftyoneDegreesPoolInit
250 #define PoolItemGet fiftyoneDegreesPoolItemGet
251 #define PoolItemRelease fiftyoneDegreesPoolItemRelease
252 #define PoolFree fiftyoneDegreesPoolFree
253 #define PoolReset fiftyoneDegreesPoolReset
254 #define FileGetSize fiftyoneDegreesFileGetSize
255 #define FileCopy fiftyoneDegreesFileCopy
256 #define MemoryTrackingMalloc fiftyoneDegreesMemoryTrackingMalloc
257 #define MemoryTrackingMallocAligned fiftyoneDegreesMemoryTrackingMallocAligned
258 #define MemoryTrackingFree fiftyoneDegreesMemoryTrackingFree
259 #define MemoryTrackingFreeAligned fiftyoneDegreesMemoryTrackingFreeAligned
260 #define MemoryStandardMalloc fiftyoneDegreesMemoryStandardMalloc
261 #define MemoryStandardMallocAligned fiftyoneDegreesMemoryStandardMallocAligned
262 #define MemoryStandardFree fiftyoneDegreesMemoryStandardFree
263 #define MemoryStandardFreeAligned fiftyoneDegreesMemoryStandardFreeAligned
264 #define ResourceManagerFree fiftyoneDegreesResourceManagerFree
265 #define StringGet fiftyoneDegreesStringGet
266 #define EvidenceFree fiftyoneDegreesEvidenceFree
267 #define EvidenceCreate fiftyoneDegreesEvidenceCreate
268 #define EvidenceMapPrefix fiftyoneDegreesEvidenceMapPrefix
269 #define EvidenceAddString fiftyoneDegreesEvidenceAddString
270 #define PropertiesGetRequiredPropertyIndexFromName fiftyoneDegreesPropertiesGetRequiredPropertyIndexFromName
271 #define PropertiesGetNameFromRequiredIndex fiftyoneDegreesPropertiesGetNameFromRequiredIndex
272 #define PropertiesIsSetHeaderAvailable fiftyoneDegreesPropertiesIsSetHeaderAvailable
273 #define CollectionHeaderFromFile fiftyoneDegreesCollectionHeaderFromFile
274 #define CollectionCreateFromFile fiftyoneDegreesCollectionCreateFromFile
275 #define CollectionHeaderFromMemory fiftyoneDegreesCollectionHeaderFromMemory
276 #define CollectionCreateFromMemory fiftyoneDegreesCollectionCreateFromMemory
277 #define CollectionGetCount fiftyoneDegreesCollectionGetCount
278 #define FileGetPath fiftyoneDegreesFileGetPath
279 #define FileGetFileName fiftyoneDegreesFileGetFileName
280 #define ThreadingGetIsThreadSafe fiftyoneDegreesThreadingGetIsThreadSafe
281 #define CollectionReadFilePosition fiftyoneDegreesCollectionReadFilePosition
282 #define CollectionReadFileFixed fiftyoneDegreesCollectionReadFileFixed
283 #define CollectionGetIsMemoryOnly fiftyoneDegreesCollectionGetIsMemoryOnly
284 #define HeaderGetIndex fiftyoneDegreesHeaderGetIndex
285 #define FileWrite fiftyoneDegreesFileWrite
286 #define FilePoolInit fiftyoneDegreesFilePoolInit
287 #define FileCreateDirectory fiftyoneDegreesFileCreateDirectory
288 #define TextFileIterateWithLimit fiftyoneDegreesTextFileIterateWithLimit
289 #define TextFileIterate fiftyoneDegreesTextFileIterate
290 #define ResourceManagerInit fiftyoneDegreesResourceManagerInit
291 #define PropertiesGetPropertyIndexFromRequiredIndex fiftyoneDegreesPropertiesGetPropertyIndexFromRequiredIndex
292 #define DataSetRelease fiftyoneDegreesDataSetRelease
293 #define DataSetReset fiftyoneDegreesDataSetReset
294 #define DataSetInitProperties fiftyoneDegreesDataSetInitProperties
295 #define DataSetInitHeaders fiftyoneDegreesDataSetInitHeaders
296 #define DataSetInitFromFile fiftyoneDegreesDataSetInitFromFile
297 #define DataSetInitInMemory fiftyoneDegreesDataSetInitInMemory
298 #define DataSetGet fiftyoneDegreesDataSetGet
299 #define DataSetFree fiftyoneDegreesDataSetFree
300 #define DataSetReloadManagerFromMemory fiftyoneDegreesDataSetReloadManagerFromMemory
301 #define DataSetReloadManagerFromFile fiftyoneDegreesDataSetReloadManagerFromFile
302 #define HeadersIsHttp fiftyoneDegreesHeadersIsHttp
303 #define ListReset fiftyoneDegreesListReset
304 #define ListRelease fiftyoneDegreesListRelease
305 #define ValueGetName fiftyoneDegreesValueGetName
306 #define ValueGetByName fiftyoneDegreesValueGetByName
307 #define ValueGet fiftyoneDegreesValueGet
308 #define CollectionBinarySearch fiftyoneDegreesCollectionBinarySearch
309 #define PropertyGetName fiftyoneDegreesPropertyGetName
310 #define CollectionReadFileVariable fiftyoneDegreesCollectionReadFileVariable
311 #define PropertyGetByName fiftyoneDegreesPropertyGetByName
312 #define ComponentGetKeyValuePair fiftyoneDegreesComponentGetKeyValuePair
313 #define PropertyGetValueType fiftyoneDegreesPropertyGetValueType
314 #define EvidencePropertiesGetMethod fiftyoneDegreesEvidencePropertiesGetMethod
315 #define IpiGetCoordinate fiftyoneDegreesIpiGetCoordinate
316 #define SignalCreate fiftyoneDegreesSignalCreate
317 #define SignalClose fiftyoneDegreesSignalClose
318 #define SignalSet fiftyoneDegreesSignalSet
319 #define SignalWait fiftyoneDegreesSignalWait
320 #define IntToBool fiftyoneDegreesIntToBool
321 #define BoolToInt fiftyoneDegreesBoolToInt
323 /* <-- only one asterisk to avoid inclusion in documentation
324  * Shortened macros.
325  */
326 
327 #define EXCEPTION_SET FIFTYONE_DEGREES_EXCEPTION_SET
328 #define EXCEPTION_CLEAR FIFTYONE_DEGREES_EXCEPTION_CLEAR
329 #define EXCEPTION_CREATE FIFTYONE_DEGREES_EXCEPTION_CREATE
330 #define EXCEPTION_OKAY FIFTYONE_DEGREES_EXCEPTION_OKAY
331 #define EXCEPTION_FAILED FIFTYONE_DEGREES_EXCEPTION_FAILED
332 #define EXCEPTION_THROW FIFTYONE_DEGREES_EXCEPTION_THROW
333 #define STRING FIFTYONE_DEGREES_STRING
334 #define IP_ADDRESS FIFTYONE_DEGREES_IP_ADDRESS
335 #define COLLECTION_RELEASE FIFTYONE_DEGREES_COLLECTION_RELEASE
336 #define FILE_MAX_PATH FIFTYONE_DEGREES_FILE_MAX_PATH
337 #define THREAD_CREATE FIFTYONE_DEGREES_THREAD_CREATE
338 #define THREAD_CLOSE FIFTYONE_DEGREES_THREAD_CLOSE
339 #define THREAD_EXIT FIFTYONE_DEGREES_THREAD_EXIT
340 #define THREAD_JOIN FIFTYONE_DEGREES_THREAD_JOIN
341 #define THREAD_ROUTINE FIFTYONE_DEGREES_THREAD_ROUTINE
342 #define MUTEX_CREATE FIFTYONE_DEGREES_MUTEX_CREATE
343 #define MUTEX_CLOSE FIFTYONE_DEGREES_MUTEX_CLOSE
344 #define MUTEX_LOCK FIFTYONE_DEGREES_MUTEX_LOCK
345 #define MUTEX_UNLOCK FIFTYONE_DEGREES_MUTEX_UNLOCK
346 #define MUTEX_VALID FIFTYONE_DEGREES_MUTEX_VALID
347 #define THREAD FIFTYONE_DEGREES_THREAD
348 #define INTERLOCK_INC FIFTYONE_DEGREES_INTERLOCK_INC
349 #define INTERLOCK_DEC FIFTYONE_DEGREES_INTERLOCK_DEC
350 #define INTERLOCK_EXCHANGE FIFTYONE_DEGREES_INTERLOCK_EXCHANGE
351 #define INTERLOCK_EXCHANGE_64 FIFTYONE_DEGREES_INTERLOCK_EXCHANGE_64
352 #define INTERLOCK_EXCHANGE_PTR FIFTYONE_DEGREES_INTERLOCK_EXCHANGE_PTR
353 #define INTERLOCK_EXCHANGE_PTR_DW FIFTYONE_DEGREES_INTERLOCK_EXCHANGE_PTR_DW
354 #define FLOAT_TO_NATIVE FIFTYONE_DEGREES_FLOAT_TO_NATIVE
355 #define NATIVE_TO_FLOAT FIFTYONE_DEGREES_NATIVE_TO_FLOAT
356 #define FLOAT_IS_EQUAL FIFTYONE_DEGREES_FLOAT_IS_EQUAL
357 #define PSEUDO_HEADER_SEP FIFTYONE_DEGREES_PSEUDO_HEADER_SEP
359 /* <-- only one asterisk to avoid inclusion in documentation
360  * Shorten status codes.
361  */
362 
363 #define SUCCESS FIFTYONE_DEGREES_STATUS_SUCCESS
364 #define INSUFFICIENT_MEMORY FIFTYONE_DEGREES_STATUS_INSUFFICIENT_MEMORY
365 #define CORRUPT_DATA FIFTYONE_DEGREES_STATUS_CORRUPT_DATA
366 #define INCORRECT_VERSION FIFTYONE_DEGREES_STATUS_INCORRECT_VERSION
367 #define FILE_NOT_FOUND FIFTYONE_DEGREES_STATUS_FILE_NOT_FOUND
368 #define FILE_BUSY FIFTYONE_DEGREES_STATUS_FILE_BUSY
369 #define FILE_FAILURE FIFTYONE_DEGREES_STATUS_FILE_FAILURE
370 #define NOT_SET FIFTYONE_DEGREES_STATUS_NOT_SET
371 #define POINTER_OUT_OF_BOUNDS FIFTYONE_DEGREES_STATUS_POINTER_OUT_OF_BOUNDS
372 #define NULL_POINTER FIFTYONE_DEGREES_STATUS_NULL_POINTER
373 #define TOO_MANY_OPEN_FILES FIFTYONE_DEGREES_STATUS_TOO_MANY_OPEN_FILES
374 #define REQ_PROP_NOT_PRESENT FIFTYONE_DEGREES_STATUS_REQ_PROP_NOT_PRESENT
375 #define PROFILE_EMPTY FIFTYONE_DEGREES_STATUS_PROFILE_EMPTY
376 #define COLLECTION_FAILURE FIFTYONE_DEGREES_STATUS_COLLECTION_FAILURE
377 #define FILE_COPY_ERROR FIFTYONE_DEGREES_STATUS_FILE_COPY_ERROR
378 #define FILE_EXISTS_ERROR FIFTYONE_DEGREES_STATUS_FILE_EXISTS_ERROR
379 #define FILE_WRITE_ERROR FIFTYONE_DEGREES_STATUS_FILE_WRITE_ERROR
380 #define FILE_PERMISSION_DENIED FIFTYONE_DEGREES_STATUS_FILE_PERMISSION_DENIED
381 #define FILE_PATH_TOO_LONG FIFTYONE_DEGREES_STATUS_FILE_PATH_TOO_LONG
382 #define ENCODING_ERROR FIFTYONE_DEGREES_STATUS_ENCODING_ERROR
383 #define INVALID_COLLECTION_CONFIG FIFTYONE_DEGREES_STATUS_INVALID_COLLECTION_CONFIG
384 #define INVALID_CONFIG FIFTYONE_DEGREES_STATUS_INVALID_CONFIG
385 #define INSUFFICIENT_HANDLES FIFTYONE_DEGREES_STATUS_INSUFFICIENT_HANDLES
386 #define COLLECTION_INDEX_OUT_OF_RANGE FIFTYONE_DEGREES_STATUS_COLLECTION_INDEX_OUT_OF_RANGE
387 #define COLLECTION_OFFSET_OUT_OF_RANGE FIFTYONE_DEGREES_STATUS_COLLECTION_OFFSET_OUT_OF_RANGE
388 #define COLLECTION_FILE_SEEK_FAIL FIFTYONE_DEGREES_STATUS_COLLECTION_FILE_SEEK_FAIL
389 #define COLLECTION_FILE_READ_FAIL FIFTYONE_DEGREES_STATUS_COLLECTION_FILE_READ_FAIL
390 #define INCORRECT_IP_ADDRESS_FORMAT FIFTYONE_DEGREES_STATUS_INCORRECT_IP_ADDRESS_FORMAT
391 #define DATA_FILE_NEEDS_UPDATED FIFTYONE_DEGREES_STATUS_DATA_FILE_NEEDS_UPDATED
397 #endif
fiftyoneDegreesDataSetInitFromMemoryMethod DataSetInitFromMemoryMethod
Synonym for fiftyoneDegreesDataSetInitFromMemoryMethod type.
Definition: fiftyone.h:142
A component of a data set.
Definition: component.h:84
Type of collection where items are cached as they are used.
Definition: collection.h:461
#define MAP_TYPE(t)
Macro used to support synonym implementation.
Definition: fiftyone.h:90
Collection header structure which defines the size and location of the collection data.
Definition: collection.h:277
fiftyoneDegreesStatusCode
Status returned from the initialisation of a resource.
Definition: status.h:82
Pool item node in the stack of items.
Definition: pool.h:183
An array of properties and values to use when getting override values.
Definition: overrides.h:113
fiftyoneDegreesOverridesFilterMethod OverridesFilterMethod
Synonym for fiftyoneDegreesOverridesFilterMethod type.
Definition: fiftyone.h:165
Singular coordinate, representing a location.
Definition: coordinate.h:55
fiftyoneDegreesPoolResourceCreate PoolResourceCreate
Synonym for fiftyoneDegreesPoolResourceCreate type.
Definition: fiftyone.h:133
Used to store a handle to the underlying item that could be used to release the item when it's finish...
Definition: collection.h:309
Used to read data from memory in a similar manner to a file handle.
Definition: memory.h:58
Structure containing the unique id of the profile, and the offset needed to retrieve the actual profi...
Definition: profile.h:108
Cache structure to store the root of the red black tree and a list of allocated cache nodes.
Definition: cache.h:192
Map of prefix strings to prefix enum values.
Definition: evidence.h:156
Tree root structure defining the beginning of the tree.
Definition: tree.h:87
Type of collection where the collection is streamed from file.
Definition: collection.h:446
Key value pair contained in each component.
Definition: component.h:74
IP address structure containing the bytes of a v4 or v6 IP address.
Definition: ip.h:80
Node structure defining a single node in the tree.
Definition: tree.h:77
Cache node structure used for storing data in the cache along with its key.
Definition: cache.h:137
String value which should override the value for the property indicated by the required property inde...
Definition: overrides.h:98
String structure containing its value and size.
Definition: string.h:114
Data structure used for reusing memory which may have been allocated in a previous operation.
Definition: data.h:106
fiftyoneDegreesCollectionItem Item
Synonym for fiftyoneDegreesCollectionItem type.
Definition: fiftyone.h:98
Pool of resources stored as items in a stack.
Definition: pool.h:203
Evidence key value pair structure which combines the prefix, key and value.
Definition: evidence.h:165
fiftyoneDegreesEvidencePrefix
Evidence prefixes used to determine the category a piece of evidence belongs to.
Definition: evidence.h:138
A signal used to limit the number of items that can be created by the pool.
Definition: threading.h:126
Array of items of type fiftyoneDegreesHeader used to easily access and track the size of the array.
Definition: headers.h:135
fiftyoneDegreesCollectionIterateMethod CollectionIterateMethod
Synonym for fiftyoneDegreesCollectionIterateMethod type.
Definition: fiftyone.h:105
Value structure containing meta data relating to the value.
Definition: value.h:77
Header structure containing the name and unique id.
Definition: headers.h:114
fiftyoneDegreesProfileIterateMethod ProfileIterateMethod
Synonym for fiftyoneDegreesProfileIterateMethod type.
Definition: fiftyone.h:171
Array of items of type fiftyoneDegreesPropertyAvailable used to easily access and track the size of t...
Definition: properties.h:170
Handle for a shared resource.
Definition: resource.h:162
Used to access the property item quickly without the need to search.
Definition: properties.h:155
fiftyoneDegreesCollectionFileRead CollectionFileRead
Synonym for fiftyoneDegreesCollectionFileRead type.
Definition: fiftyone.h:110
Property structure containing all the meta data relating to a property.
Definition: property.h:90
fiftyoneDegreesMutex Mutex
Synonym for fiftyoneDegreesMutex type.
Definition: fiftyone.h:166
List structure which contains a list of collection items.
Definition: list.h:117
The head of the stack used for pop and push operations.
Definition: pool.h:192
File handle node in the stack of handles.
Definition: file.h:222
Struture that represents 51Degrees implementation, which encapsulate an array of 4 bytes.
Definition: float.h:122
Defines a set of properties which are required by a caller.
Definition: properties.h:180
Array of items of type fiftyoneDegreesEvidenceKeyValuePair used to easily access and track the size o...
Definition: evidence.h:177
Manager structure used to provide access to a shared and changing resource.
Definition: resource.h:178
fiftyoneDegreesEvidenceIpType
Enum indicating the type of IP address.
Definition: ip.h:64
Cache shard structure used to enable concurrent access to the cache.
Definition: cache.h:149
fiftyoneDegreesStringFormat
Enumeration to indicate what format is held in a string item These are the values that can be held at...
Definition: string.h:83
Base data set structure which contains the 'must have's for all data sets.
Definition: dataset.h:101
Structure used to represent a 51Degrees exception and passed into methods that might generate excepti...
Definition: exceptions.h:116
fiftyoneDegreesPoolResourceSize PoolResourceSize
Synonym for fiftyoneDegreesPoolResourceSize type.
Definition: fiftyone.h:137
fiftyoneDegreesPoolResourceFree PoolResourceFree
Synonym for fiftyoneDegreesPoolResourceFree type.
Definition: fiftyone.h:134
Type of collection where the collection is held in continuous memory.
Definition: collection.h:435
Stack of handles used to read data from a single source file.
Definition: file.h:230
Index and pointer to a property which can be overridden.
Definition: overrides.h:88
Array of items of type fiftyoneDegreesOverrideProperty used to easily access and track the size of th...
Definition: overrides.h:108
Double width (64 or 128 depending on the architecture) compare and exchange.
Definition: threading.h:427
Encapsulates a profile stored within a data set.
Definition: profile.h:93
Array of items of type fiftyoneDegreesEvidencePropertyIndex used to easily access and track the size ...
Definition: properties.h:146
fiftyoneDegreesDataSetInitFromFileMethod DataSetInitFromFileMethod
Synonym for fiftyoneDegreesDataSetInitFromFileMethod type.
Definition: fiftyone.h:141
fiftyoneDegreesEvidencePropertyIndex EvidencePropertyIndex
Synonym for fiftyoneDegreesEvidencePropertyIndex type.
Definition: fiftyone.h:162
fiftyoneDegreesHeadersGetMethod HeadersGetMethod
Synonym for fiftyoneDegreesHeadersGetMethod type.
Definition: fiftyone.h:145
fiftyoneDegreesPropertiesGetMethod PropertiesGetMethod
Synonym for fiftyoneDegreesPropertiesGetMethod type.
Definition: fiftyone.h:144