\r\n

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