51Degrees Device Detection C/C++  4.2

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 
87 #define MAP_TYPE(t) typedef fiftyoneDegrees##t t;
89 /* <-- only one asterisk to avoid inclusion in documentation
90  * Most mappings simply remove fiftyoneDegrees. However in some cases even
91  * shorter names make sense. These are provided before the general references
92  * to MAP_TYPE.
93  */
94 
97 /* <-- only one asterisk to avoid inclusion in documentation
98  * General references to MAP_TYPE used to strip fiftyoneDegrees as a prefix
99  * from types.
100  */
101 
105 #ifndef FIFTYONE_DEGREES_MEMORY_ONLY
110 #endif
171 
172 #define ProfileGetOffsetForProfileId fiftyoneDegreesProfileGetOffsetForProfileId
173 #define OverrideValuesAdd fiftyoneDegreesOverrideValuesAdd
174 #define ExceptionGetMessage fiftyoneDegreesExceptionGetMessage
175 #define ProfileGetByProfileId fiftyoneDegreesProfileGetByProfileId
176 #define ProfileGetByIndex fiftyoneDegreesProfileGetByIndex
177 #define OverridesAdd fiftyoneDegreesOverridesAdd
178 #define OverrideProfileIds fiftyoneDegreesOverrideProfileIds
179 #define ComponentInitList fiftyoneDegreesComponentInitList
180 #define CollectionGetInteger32 fiftyoneDegreesCollectionGetInteger32
181 #define PropertyGet fiftyoneDegreesPropertyGet
182 #define ProfileIterateValuesForProperty fiftyoneDegreesProfileIterateValuesForProperty
183 #define ProfileIterateProfilesForPropertyAndValue fiftyoneDegreesProfileIterateProfilesForPropertyAndValue
184 #define PropertiesGetPropertyIndexFromName fiftyoneDegreesPropertiesGetPropertyIndexFromName
185 #define TreeIterate fiftyoneDegreesTreeIterateNodes
186 #define TreeCount fiftyoneDegreesTreeCount
187 #define TreeDelete fiftyoneDegreesTreeDelete
188 #define TreeInsert fiftyoneDegreesTreeInsert
189 #define TreeFind fiftyoneDegreesTreeFind
190 #define TreeNodeInit fiftyoneDegreesTreeNodeInit
191 #define TreeNodeRemove fiftyoneDegreesTreeNodeRemove
192 #define TreeRootInit fiftyoneDegreesTreeRootInit
193 #define OverridesGetOverridingRequiredPropertyIndex fiftyoneDegreesOverridesGetOverridingRequiredPropertyIndex
194 #define OverridePropertiesCreate fiftyoneDegreesOverridePropertiesCreate
195 #define EvidenceCreate fiftyoneDegreesEvidenceCreate
196 #define EvidenceFree fiftyoneDegreesEvidenceFree
197 #define OverridesGetOverridingRequiredPropertyIndex fiftyoneDegreesOverridesGetOverridingRequiredPropertyIndex
198 #define StringCompareLength fiftyoneDegreesStringCompareLength
199 #define StringCompare fiftyoneDegreesStringCompare
200 #define StringSubString fiftyoneDegreesStringSubString
201 #define OverridesExtractFromEvidence fiftyoneDegreesOverridesExtractFromEvidence
202 #define EvidenceIterate fiftyoneDegreesEvidenceIterate
203 #define CacheRelease fiftyoneDegreesCacheRelease
204 #define DataReset fiftyoneDegreesDataReset
205 #define CacheFree fiftyoneDegreesCacheFree
206 #define FileHandleGet fiftyoneDegreesFileHandleGet
207 #define FileHandleRelease fiftyoneDegreesFileHandleRelease
208 #define DataMalloc fiftyoneDegreesDataMalloc
209 #define CacheGet fiftyoneDegreesCacheGet
210 #define CacheCreate fiftyoneDegreesCacheCreate
211 #define MemoryAdvance fiftyoneDegreesMemoryAdvance
212 #define MemoryTrackingReset fiftyoneDegreesMemoryTrackingReset
213 #define MemoryTrackingGetMax fiftyoneDegreesMemoryTrackingGetMax
214 #define MemoryTrackingGetAllocated fiftyoneDegreesMemoryTrackingGetAllocated
215 #define Malloc fiftyoneDegreesMalloc
216 #define MallocAligned fiftyoneDegreesMallocAligned
217 #define Free fiftyoneDegreesFree
218 #define FreeAligned fiftyoneDegreesFreeAligned
219 #define ResourceHandleIncUse fiftyoneDegreesResourceHandleIncUse
220 #define PropertiesDefault fiftyoneDegreesPropertiesDefault
221 #define ListGetAsString fiftyoneDegreesListGetAsString
222 #define ListAdd fiftyoneDegreesListAdd
223 #define ListInit fiftyoneDegreesListInit
224 #define ListFree fiftyoneDegreesListFree
225 #define FileGetExistingTempFile fiftyoneDegreesFileGetExistingTempFile
226 #define FileDeleteUnusedTempFiles fiftyoneDegreesFileDeleteUnusedTempFiles
227 #define FileCreateTempFile fiftyoneDegreesFileCreateTempFile
228 #define HeadersFree fiftyoneDegreesHeadersFree
229 #define PropertiesFree fiftyoneDegreesPropertiesFree
230 #define FilePoolRelease fiftyoneDegreesFilePoolRelease
231 #define FileDelete fiftyoneDegreesFileDelete
232 #define FilePoolReset fiftyoneDegreesFilePoolReset
233 #define PropertiesCreate fiftyoneDegreesPropertiesCreate
234 #define HeadersCreate fiftyoneDegreesHeadersCreate
235 #define HeadersGetHeaderFromUniqueId fiftyoneDegreesHeadersGetHeaderFromUniqueId
236 #define FileReadToByteArray fiftyoneDegreesFileReadToByteArray
237 #define ResourceHandleDecUse fiftyoneDegreesResourceHandleDecUse
238 #define ResourceReplace fiftyoneDegreesResourceReplace
239 #define StatusGetMessage fiftyoneDegreesStatusGetMessage
240 #define FileOpen fiftyoneDegreesFileOpen
241 #define PoolInit fiftyoneDegreesPoolInit
242 #define PoolItemGet fiftyoneDegreesPoolItemGet
243 #define PoolItemRelease fiftyoneDegreesPoolItemRelease
244 #define PoolFree fiftyoneDegreesPoolFree
245 #define PoolReset fiftyoneDegreesPoolReset
246 #define FileGetSize fiftyoneDegreesFileGetSize
247 #define FileCopy fiftyoneDegreesFileCopy
248 #define MemoryTrackingMalloc fiftyoneDegreesMemoryTrackingMalloc
249 #define MemoryTrackingMallocAligned fiftyoneDegreesMemoryTrackingMallocAligned
250 #define MemoryTrackingFree fiftyoneDegreesMemoryTrackingFree
237 #define ResourceHandleDecUse fiftyoneDegreesResourceHandleDecUse
238 #define ResourceReplace fiftyoneDegreesResourceReplace
239 #define StatusGetMessage fiftyoneDegreesStatusGetMessage
240 #define FileOpen fiftyoneDegreesFileOpen
241 #define PoolInit fiftyoneDegreesPoolInit
242 #define PoolItemGet fiftyoneDegreesPoolItemGet
243 #define PoolItemRelease fiftyoneDegreesPoolItemRelease
244 #define PoolFree fiftyoneDegreesPoolFree
245 #define PoolReset fiftyoneDegreesPoolReset
246 #define FileGetSize fiftyoneDegreesFileGetSize
247 #define FileCopy fiftyoneDegreesFileCopy
248 #define MemoryTrackingMalloc fiftyoneDegreesMemoryTrackingMalloc
249 #define MemoryTrackingMallocAligned fiftyoneDegreesMemoryTrackingMallocAligned
250 #define MemoryTrackingFree fiftyoneDegreesMemoryTrackingFree
251 #define MemoryTrackingFreeAligned fiftyoneDegreesMemoryTrackingFreeAligned
252 #define MemoryStandardMalloc fiftyoneDegreesMemoryStandardMalloc
253 #define MemoryStandardMallocAligned fiftyoneDegreesMemoryStandardMallocAligned
254 #define MemoryStandardFree fiftyoneDegreesMemoryStandardFree
255 #define MemoryStandardFreeAligned fiftyoneDegreesMemoryStandardFreeAligned
256 #define ResourceManagerFree fiftyoneDegreesResourceManagerFree
257 #define StringGet fiftyoneDegreesStringGet
258 #define EvidenceFree fiftyoneDegreesEvidenceFree
259 #define EvidenceCreate fiftyoneDegreesEvidenceCreate
260 #define EvidenceMapPrefix fiftyoneDegreesEvidenceMapPrefix
261 #define EvidenceAddString fiftyoneDegreesEvidenceAddString
262 #define PropertiesGetRequiredPropertyIndexFromName fiftyoneDegreesPropertiesGetRequiredPropertyIndexFromName
263 #define PropertiesGetNameFromRequiredIndex fiftyoneDegreesPropertiesGetNameFromRequiredIndex
264 #define CollectionHeaderFromFile fiftyoneDegreesCollectionHeaderFromFile
265 #define CollectionCreateFromFile fiftyoneDegreesCollectionCreateFromFile
266 #define CollectionHeaderFromMemory fiftyoneDegreesCollectionHeaderFromMemory
267 #define CollectionCreateFromMemory fiftyoneDegreesCollectionCreateFromMemory
268 #define CollectionGetCount fiftyoneDegreesCollectionGetCount
269 #define FileGetPath fiftyoneDegreesFileGetPath
270 #define FileGetFileName fiftyoneDegreesFileGetFileName
271 #define ThreadingGetIsThreadSafe fiftyoneDegreesThreadingGetIsThreadSafe
272 #define CollectionReadFilePosition fiftyoneDegreesCollectionReadFilePosition
273 #define CollectionReadFileFixed fiftyoneDegreesCollectionReadFileFixed
274 #define CollectionGetIsMemoryOnly fiftyoneDegreesCollectionGetIsMemoryOnly
275 #define HeaderGetIndex fiftyoneDegreesHeaderGetIndex
276 #define FileWrite fiftyoneDegreesFileWrite
277 #define FilePoolInit fiftyoneDegreesFilePoolInit
278 #define FileCreateDirectory fiftyoneDegreesFileCreateDirectory
279 #define TextFileIterateWithLimit fiftyoneDegreesTextFileIterateWithLimit
280 #define TextFileIterate fiftyoneDegreesTextFileIterate
281 #define ResourceManagerInit fiftyoneDegreesResourceManagerInit
282 #define PropertiesGetPropertyIndexFromRequiredIndex fiftyoneDegreesPropertiesGetPropertyIndexFromRequiredIndex
283 #define DataSetRelease fiftyoneDegreesDataSetRelease
284 #define DataSetReset fiftyoneDegreesDataSetReset
285 #define DataSetInitProperties fiftyoneDegreesDataSetInitProperties
286 #define DataSetInitHeaders fiftyoneDegreesDataSetInitHeaders
287 #define DataSetInitFromFile fiftyoneDegreesDataSetInitFromFile
288 #define DataSetInitInMemory fiftyoneDegreesDataSetInitInMemory
289 #define DataSetGet fiftyoneDegreesDataSetGet
290 #define DataSetFree fiftyoneDegreesDataSetFree
291 #define DataSetReloadManagerFromMemory fiftyoneDegreesDataSetReloadManagerFromMemory
292 #define DataSetReloadManagerFromFile fiftyoneDegreesDataSetReloadManagerFromFile
293 #define HeadersIsHttp fiftyoneDegreesHeadersIsHttp
294 #define ListReset fiftyoneDegreesListReset
295 #define ListRelease fiftyoneDegreesListRelease
296 #define ValueGetName fiftyoneDegreesValueGetName
297 #define ValueGetByName fiftyoneDegreesValueGetByName
298 #define ValueGet fiftyoneDegreesValueGet
299 #define CollectionBinarySearch fiftyoneDegreesCollectionBinarySearch
300 #define PropertyGetName fiftyoneDegreesPropertyGetName
301 #define CollectionReadFileVariable fiftyoneDegreesCollectionReadFileVariable
302 #define PropertyGetByName fiftyoneDegreesPropertyGetByName
303 #define ComponentGetKeyValuePair fiftyoneDegreesComponentGetKeyValuePair
304 #define PropertyGetValueType fiftyoneDegreesPropertyGetValueType
305 #define EvidencePropertiesGetMethod fiftyoneDegreesEvidencePropertiesGetMethod
306 #define IpiGetCoordinate fiftyoneDegreesIpiGetCoordinate
307 #define SignalCreate fiftyoneDegreesSignalCreate
308 #define SignalClose fiftyoneDegreesSignalClose
309 #define SignalSet fiftyoneDegreesSignalSet
310 #define SignalWait fiftyoneDegreesSignalWait
312 /* <-- only one asterisk to avoid inclusion in documentation
313  * Shortened macros.
314  */
315 
316 #define EXCEPTION_SET FIFTYONE_DEGREES_EXCEPTION_SET
317 #define EXCEPTION_CLEAR FIFTYONE_DEGREES_EXCEPTION_CLEAR
318 #define EXCEPTION_CREATE FIFTYONE_DEGREES_EXCEPTION_CREATE
319 #define EXCEPTION_OKAY FIFTYONE_DEGREES_EXCEPTION_OKAY
320 #define EXCEPTION_FAILED FIFTYONE_DEGREES_EXCEPTION_FAILED
321 #define EXCEPTION_THROW FIFTYONE_DEGREES_EXCEPTION_THROW
322 #define STRING FIFTYONE_DEGREES_STRING
323 #define IP_ADDRESS FIFTYONE_DEGREES_IP_ADDRESS
324 #define COLLECTION_RELEASE FIFTYONE_DEGREES_COLLECTION_RELEASE
325 #define FILE_MAX_PATH FIFTYONE_DEGREES_FILE_MAX_PATH
326 #define THREAD_CREATE FIFTYONE_DEGREES_THREAD_CREATE
327 #define THREAD_CLOSE FIFTYONE_DEGREES_THREAD_CLOSE
328 #define THREAD_EXIT FIFTYONE_DEGREES_THREAD_EXIT
329 #define THREAD_JOIN FIFTYONE_DEGREES_THREAD_JOIN
330 #define THREAD_ROUTINE FIFTYONE_DEGREES_THREAD_ROUTINE
331 #define MUTEX_CREATE FIFTYONE_DEGREES_MUTEX_CREATE
332 #define MUTEX_CLOSE FIFTYONE_DEGREES_MUTEX_CLOSE
333 #define MUTEX_LOCK FIFTYONE_DEGREES_MUTEX_LOCK
334 #define MUTEX_UNLOCK FIFTYONE_DEGREES_MUTEX_UNLOCK
335 #define MUTEX_VALID FIFTYONE_DEGREES_MUTEX_VALID
336 #define THREAD FIFTYONE_DEGREES_THREAD
337 #define INTERLOCK_INC FIFTYONE_DEGREES_INTERLOCK_INC
338 #define INTERLOCK_DEC FIFTYONE_DEGREES_INTERLOCK_DEC
339 #define INTERLOCK_EXCHANGE FIFTYONE_DEGREES_INTERLOCK_EXCHANGE
340 #define INTERLOCK_EXCHANGE_64 FIFTYONE_DEGREES_INTERLOCK_EXCHANGE_64
341 #define INTERLOCK_EXCHANGE_PTR FIFTYONE_DEGREES_INTERLOCK_EXCHANGE_PTR
342 #define INTERLOCK_EXCHANGE_PTR_DW FIFTYONE_DEGREES_INTERLOCK_EXCHANGE_PTR_DW
343 #define FLOAT_TO_NATIVE FIFTYONE_DEGREES_FLOAT_TO_NATIVE
344 #define NATIVE_TO_FLOAT FIFTYONE_DEGREES_NATIVE_TO_FLOAT
345 #define FLOAT_IS_EQUAL FIFTYONE_DEGREES_FLOAT_IS_EQUAL
347 /* <-- only one asterisk to avoid inclusion in documentation
348  * Shorten status codes.
349  */
350 
351 #define SUCCESS FIFTYONE_DEGREES_STATUS_SUCCESS
352 #define INSUFFICIENT_MEMORY FIFTYONE_DEGREES_STATUS_INSUFFICIENT_MEMORY
353 #define CORRUPT_DATA FIFTYONE_DEGREES_STATUS_CORRUPT_DATA
354 #define INCORRECT_VERSION FIFTYONE_DEGREES_STATUS_INCORRECT_VERSION
355 #define FILE_NOT_FOUND FIFTYONE_DEGREES_STATUS_FILE_NOT_FOUND
356 #define FILE_BUSY FIFTYONE_DEGREES_STATUS_FILE_BUSY
357 #define FILE_FAILURE FIFTYONE_DEGREES_STATUS_FILE_FAILURE
358 #define NOT_SET FIFTYONE_DEGREES_STATUS_NOT_SET
359 #define POINTER_OUT_OF_BOUNDS FIFTYONE_DEGREES_STATUS_POINTER_OUT_OF_BOUNDS
360 #define NULL_POINTER FIFTYONE_DEGREES_STATUS_NULL_POINTER
361 #define TOO_MANY_OPEN_FILES FIFTYONE_DEGREES_STATUS_TOO_MANY_OPEN_FILES
362 #define REQ_PROP_NOT_PRESENT FIFTYONE_DEGREES_STATUS_REQ_PROP_NOT_PRESENT
363 #define PROFILE_EMPTY FIFTYONE_DEGREES_STATUS_PROFILE_EMPTY
364 #define COLLECTION_FAILURE FIFTYONE_DEGREES_STATUS_COLLECTION_FAILURE
365 #define FILE_COPY_ERROR FIFTYONE_DEGREES_STATUS_FILE_COPY_ERROR
366 #define FILE_EXISTS_ERROR FIFTYONE_DEGREES_STATUS_FILE_EXISTS_ERROR
367 #define FILE_WRITE_ERROR FIFTYONE_DEGREES_STATUS_FILE_WRITE_ERROR
368 #define FILE_PERMISSION_DENIED FIFTYONE_DEGREES_STATUS_FILE_PERMISSION_DENIED
369 #define FILE_PATH_TOO_LONG FIFTYONE_DEGREES_STATUS_FILE_PATH_TOO_LONG
370 #define ENCODING_ERROR FIFTYONE_DEGREES_STATUS_ENCODING_ERROR
371 #define INVALID_COLLECTION_CONFIG FIFTYONE_DEGREES_STATUS_INVALID_COLLECTION_CONFIG
372 #define INVALID_CONFIG FIFTYONE_DEGREES_STATUS_INVALID_CONFIG
373 #define INSUFFICIENT_HANDLES FIFTYONE_DEGREES_STATUS_INSUFFICIENT_HANDLES
374 #define COLLECTION_INDEX_OUT_OF_RANGE FIFTYONE_DEGREES_STATUS_COLLECTION_INDEX_OUT_OF_RANGE
375 #define COLLECTION_OFFSET_OUT_OF_RANGE FIFTYONE_DEGREES_STATUS_COLLECTION_OFFSET_OUT_OF_RANGE
376 #define COLLECTION_FILE_SEEK_FAIL FIFTYONE_DEGREES_STATUS_COLLECTION_FILE_SEEK_FAIL
377 #define COLLECTION_FILE_READ_FAIL FIFTYONE_DEGREES_STATUS_COLLECTION_FILE_READ_FAIL
378 #define INCORRECT_IP_ADDRESS_FORMAT FIFTYONE_DEGREES_STATUS_INCORRECT_IP_ADDRESS_FORMAT
384 #endif
fiftyoneDegreesDataSetInitFromMemoryMethod DataSetInitFromMemoryMethod
Synonym for fiftyoneDegreesDataSetInitFromMemoryMethod type.
Definition: fiftyone.h:139
A component of a data set.
Definition: component.h:80
Type of collection where items are cached as they are used.
Definition: collection.h:460
#define MAP_TYPE(t)
Macro used to support synonym implementation.
Definition: fiftyone.h:87
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:179
An array of properties and values to use when getting override values.
Definition: overrides.h:107
fiftyoneDegreesOverridesFilterMethod OverridesFilterMethod
Synonym for fiftyoneDegreesOverridesFilterMethod type.
Definition: fiftyone.h:162
Singular coordinate, representing a location.
Definition: coordinate.h:55
fiftyoneDegreesPoolResourceCreate PoolResourceCreate
Synonym for fiftyoneDegreesPoolResourceCreate type.
Definition: fiftyone.h:130
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:104
Cache structure to store the root of the red black tree and a list of allocated cache nodes.
Definition: cache.h:184
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:445
Key value pair contained in each component.
Definition: component.h:70
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:129
String value which should override the value for the property indicated by the required property inde...
Definition: overrides.h:92
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:95
Pool of resources stored as items in a stack.
Definition: pool.h:199
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:120
Array of items of type fiftyoneDegreesHeader used to easily access and track the size of the array.
Definition: headers.h:131
fiftyoneDegreesCollectionIterateMethod CollectionIterateMethod
Synonym for fiftyoneDegreesCollectionIterateMethod type.
Definition: fiftyone.h:102
Value structure containing meta data relating to the value.
Definition: value.h:73
Header structure containing the name and unique id.
Definition: headers.h:114
fiftyoneDegreesProfileIterateMethod ProfileIterateMethod
Synonym for fiftyoneDegreesProfileIterateMethod type.
Definition: fiftyone.h:168
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:107
Property structure containing all the meta data relating to a property.
Definition: property.h:86
fiftyoneDegreesMutex Mutex
Synonym for fiftyoneDegreesMutex type.
Definition: fiftyone.h:163
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:188
File handle node in the stack of handles.
Definition: file.h:214
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:172
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:141
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:134
fiftyoneDegreesPoolResourceFree PoolResourceFree
Synonym for fiftyoneDegreesPoolResourceFree type.
Definition: fiftyone.h:131
Type of collection where the collection is held in continuous memory.
Definition: collection.h:434
Stack of handles used to read data from a single source file.
Definition: file.h:222
Index and pointer to a property which can be overridden.
Definition: overrides.h:82
Array of items of type fiftyoneDegreesOverrideProperty used to easily access and track the size of th...
Definition: overrides.h:102
Double width (64 or 128 depending on the architecture) compare and exchange.
Definition: threading.h:437
Encapsulates a profile stored within a data set.
Definition: profile.h:89
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:138
fiftyoneDegreesEvidencePropertyIndex EvidencePropertyIndex
Synonym for fiftyoneDegreesEvidencePropertyIndex type.
Definition: fiftyone.h:159
fiftyoneDegreesHeadersGetMethod HeadersGetMethod
Synonym for fiftyoneDegreesHeadersGetMethod type.
Definition: fiftyone.h:142
fiftyoneDegreesPropertiesGetMethod PropertiesGetMethod
Synonym for fiftyoneDegreesPropertiesGetMethod type.
Definition: fiftyone.h:141