fiftyone-ipintelligence-onpremise 4.5.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (215) hide show
  1. fiftyone_ipintelligence_onpremise-4.5.0/MANIFEST.in +4 -0
  2. fiftyone_ipintelligence_onpremise-4.5.0/PKG-INFO +62 -0
  3. fiftyone_ipintelligence_onpremise-4.5.0/pyproject.toml +3 -0
  4. fiftyone_ipintelligence_onpremise-4.5.0/setup.cfg +4 -0
  5. fiftyone_ipintelligence_onpremise-4.5.0/setup.py +265 -0
  6. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/IpIntelligenceEngineModule.py +1947 -0
  7. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/__init__.py +0 -0
  8. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/constants.py +31 -0
  9. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/Collection.hpp +133 -0
  10. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/Collection.i +35 -0
  11. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/CollectionConfig.cpp +69 -0
  12. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/CollectionConfig.hpp +142 -0
  13. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/CollectionConfig.i +38 -0
  14. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ComponentMetaData.cpp +62 -0
  15. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ComponentMetaData.hpp +115 -0
  16. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ComponentMetaData.i +35 -0
  17. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ConfigBase.cpp +98 -0
  18. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ConfigBase.hpp +199 -0
  19. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ConfigBase.i +43 -0
  20. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/CsTypes.i +33 -0
  21. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/Date.cpp +43 -0
  22. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/Date.hpp +103 -0
  23. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/Date.i +30 -0
  24. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/EngineBase.cpp +207 -0
  25. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/EngineBase.hpp +342 -0
  26. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/EngineBase.i +61 -0
  27. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/EntityMetaData.hpp +108 -0
  28. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/EntityMetaDataBuilder.hpp +120 -0
  29. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/EvidenceBase.cpp +91 -0
  30. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/EvidenceBase.hpp +143 -0
  31. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/EvidenceBase.i +32 -0
  32. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/Exceptions.cpp +104 -0
  33. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/Exceptions.hpp +183 -0
  34. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/Exceptions.i +59 -0
  35. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/FiftyoneDegrees.hpp +34 -0
  36. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/IpAddress.cpp +85 -0
  37. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/IpAddress.hpp +127 -0
  38. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/IpAddress.i +42 -0
  39. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/JavaTypes.i +150 -0
  40. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/MapStringStringIterator.i +59 -0
  41. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/MetaData.cpp +66 -0
  42. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/MetaData.hpp +246 -0
  43. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/MetaData.i +81 -0
  44. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ProfileMetaData.cpp +52 -0
  45. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ProfileMetaData.hpp +98 -0
  46. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ProfileMetaData.i +33 -0
  47. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/PropertyMetaData.cpp +163 -0
  48. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/PropertyMetaData.hpp +271 -0
  49. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/PropertyMetaData.i +46 -0
  50. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/RequiredPropertiesConfig.cpp +161 -0
  51. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/RequiredPropertiesConfig.hpp +173 -0
  52. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/RequiredPropertiesConfig.i +36 -0
  53. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ResultsBase.cpp +408 -0
  54. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ResultsBase.hpp +560 -0
  55. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ResultsBase.i +64 -0
  56. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/Types.i +29 -0
  57. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/Value.hpp +213 -0
  58. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/Value.i +38 -0
  59. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ValueMetaData.cpp +125 -0
  60. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ValueMetaData.hpp +208 -0
  61. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ValueMetaData.i +59 -0
  62. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/array.h +84 -0
  63. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/bool.c +31 -0
  64. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/bool.h +52 -0
  65. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/cache.c +444 -0
  66. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/cache.h +282 -0
  67. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/collection.c +1190 -0
  68. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/collection.h +737 -0
  69. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/collectionKey.h +85 -0
  70. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/collectionKeyTypes.c +67 -0
  71. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/collectionKeyTypes.h +174 -0
  72. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/common.h +67 -0
  73. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/component.c +190 -0
  74. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/component.h +204 -0
  75. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/config.h +127 -0
  76. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/constants.h +48 -0
  77. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/data.c +48 -0
  78. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/data.h +135 -0
  79. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/dataset.c +392 -0
  80. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/dataset.h +459 -0
  81. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/date.h +73 -0
  82. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/evidence.c +451 -0
  83. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/evidence.h +334 -0
  84. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/exceptions.h +235 -0
  85. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/exceptionsc.c +93 -0
  86. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/fiftyone.h +520 -0
  87. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/file.c +1151 -0
  88. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/file.h +523 -0
  89. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/fileOffset.h +78 -0
  90. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/float.c +133 -0
  91. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/float.h +219 -0
  92. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/headers.c +626 -0
  93. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/headers.h +260 -0
  94. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/indices.c +344 -0
  95. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/indices.h +184 -0
  96. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ip.c +357 -0
  97. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ip.h +112 -0
  98. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ip.i +29 -0
  99. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/ipiSymbols.h +286 -0
  100. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/json.c +193 -0
  101. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/json.h +132 -0
  102. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/list.c +73 -0
  103. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/list.h +175 -0
  104. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/memory.c +327 -0
  105. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/memory.h +219 -0
  106. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/overrides.c +491 -0
  107. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/overrides.h +307 -0
  108. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/pair.h +42 -0
  109. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/pool.c +148 -0
  110. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/pool.h +272 -0
  111. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/process.c +43 -0
  112. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/process.h +39 -0
  113. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/profile.c +727 -0
  114. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/profile.h +448 -0
  115. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/properties.c +555 -0
  116. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/properties.h +377 -0
  117. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/property.c +276 -0
  118. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/property.h +263 -0
  119. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/propertyValueType.c +48 -0
  120. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/propertyValueType.h +101 -0
  121. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/resource.c +417 -0
  122. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/resource.h +267 -0
  123. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/results.c +31 -0
  124. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/results.h +120 -0
  125. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/snprintf.h +37 -0
  126. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/status.c +177 -0
  127. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/status.h +176 -0
  128. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/storedBinaryValue.c +213 -0
  129. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/storedBinaryValue.h +194 -0
  130. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/string.c +138 -0
  131. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/string.h +186 -0
  132. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/stringBuilder.c +367 -0
  133. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/stringBuilder.h +188 -0
  134. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/string_pp.cpp +118 -0
  135. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/string_pp.hpp +49 -0
  136. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/textfile.c +117 -0
  137. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/textfile.h +86 -0
  138. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/threading.c +146 -0
  139. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/threading.h +459 -0
  140. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/tree.c +391 -0
  141. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/tree.h +180 -0
  142. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/value.c +302 -0
  143. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/value.h +294 -0
  144. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/weightedItem.c +100 -0
  145. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/weightedItem.h +154 -0
  146. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/wkbtot.c +650 -0
  147. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/wkbtot.h +93 -0
  148. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/wkbtot_pp.cpp +105 -0
  149. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/wkbtot_pp.hpp +50 -0
  150. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/yamlfile.c +337 -0
  151. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/common/yamlfile.h +127 -0
  152. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ComponentMetaDataBuilderIpi.cpp +43 -0
  153. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ComponentMetaDataBuilderIpi.hpp +60 -0
  154. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ComponentMetaDataCollectionIpi.cpp +70 -0
  155. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ComponentMetaDataCollectionIpi.hpp +86 -0
  156. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ConfigIpi.cpp +169 -0
  157. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ConfigIpi.hpp +279 -0
  158. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ConfigIpi.i +53 -0
  159. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/EngineIpi.cpp +435 -0
  160. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/EngineIpi.hpp +336 -0
  161. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/EngineIpi.i +75 -0
  162. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/EvidenceIpi.cpp +34 -0
  163. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/EvidenceIpi.hpp +84 -0
  164. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/EvidenceIpi.i +32 -0
  165. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/FiftyoneDegrees.hpp +35 -0
  166. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/MetaDataIpi.cpp +151 -0
  167. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/MetaDataIpi.hpp +116 -0
  168. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ProfileMetaDataBuilderIpi.cpp +41 -0
  169. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ProfileMetaDataBuilderIpi.hpp +62 -0
  170. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ProfileMetaDataCollectionIpi.cpp +87 -0
  171. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ProfileMetaDataCollectionIpi.hpp +89 -0
  172. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/PropertyMetaDataBuilderIpi.cpp +237 -0
  173. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/PropertyMetaDataBuilderIpi.hpp +127 -0
  174. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/PropertyMetaDataCollectionForComponentIpi.cpp +91 -0
  175. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/PropertyMetaDataCollectionForComponentIpi.hpp +93 -0
  176. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/PropertyMetaDataCollectionForPropertyIpi.cpp +87 -0
  177. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/PropertyMetaDataCollectionForPropertyIpi.hpp +79 -0
  178. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/PropertyMetaDataCollectionIpi.cpp +86 -0
  179. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/PropertyMetaDataCollectionIpi.hpp +86 -0
  180. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ResultsIpi.cpp +905 -0
  181. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ResultsIpi.hpp +497 -0
  182. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ResultsIpi.i +127 -0
  183. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ValueMetaDataBuilderIpi.cpp +124 -0
  184. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ValueMetaDataBuilderIpi.hpp +63 -0
  185. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ValueMetaDataCollectionBaseIpi.cpp +81 -0
  186. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ValueMetaDataCollectionBaseIpi.hpp +81 -0
  187. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ValueMetaDataCollectionForProfileIpi.cpp +160 -0
  188. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ValueMetaDataCollectionForProfileIpi.hpp +105 -0
  189. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ValueMetaDataCollectionForPropertyIpi.cpp +103 -0
  190. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ValueMetaDataCollectionForPropertyIpi.hpp +94 -0
  191. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ValueMetaDataCollectionIpi.cpp +57 -0
  192. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ValueMetaDataCollectionIpi.hpp +75 -0
  193. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/WeightedValue.hpp +117 -0
  194. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/WeightedValue.i +58 -0
  195. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/constantsIpi.h +49 -0
  196. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/fiftyone.h +94 -0
  197. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/graph/graph.c +1449 -0
  198. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/graph/graph.h +314 -0
  199. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ipi.c +3868 -0
  200. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ipi.h +1079 -0
  201. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ipi.i +43 -0
  202. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ipi_weighted_results.c +889 -0
  203. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/ipi_weighted_results.h +150 -0
  204. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/ipi_python_wrap.cxx +49613 -0
  205. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/ipintelligence_datafile.py +114 -0
  206. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/ipintelligence_onpremise.py +396 -0
  207. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/ipintelligence_onpremise_pipelinebuilder.py +129 -0
  208. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise/swig_data.py +252 -0
  209. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise.egg-info/PKG-INFO +62 -0
  210. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise.egg-info/SOURCES.txt +213 -0
  211. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise.egg-info/dependency_links.txt +1 -0
  212. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise.egg-info/requires.txt +2 -0
  213. fiftyone_ipintelligence_onpremise-4.5.0/src/fiftyone_ipintelligence_onpremise.egg-info/top_level.txt +2 -0
  214. fiftyone_ipintelligence_onpremise-4.5.0/tests/test_ipintelligence.py +265 -0
  215. fiftyone_ipintelligence_onpremise-4.5.0/version.txt +1 -0
@@ -0,0 +1,4 @@
1
+ recursive-include src/fiftyone_ipintelligence_onpremise/cxx/src *.hpp
2
+ recursive-include src/fiftyone_ipintelligence_onpremise/cxx/src *.h
3
+ recursive-include src/fiftyone_ipintelligence_onpremise/cxx/src *.i
4
+ include version.txt
@@ -0,0 +1,62 @@
1
+ Metadata-Version: 2.1
2
+ Name: fiftyone_ipintelligence_onpremise
3
+ Version: 4.5.0
4
+ Summary: This project contains the 51Degrees IP Intelligence OnPremise engine that can be used with the 51Degrees Pipeline API. The Pipeline is a generic web request intelligence and data processing solution with the ability to add a range of 51Degrees and/or custom plug ins (Engines)
5
+ Author: 51Degrees Engineering
6
+ Author-email: engineering@51degrees.com
7
+ License: EUPL-1.2
8
+ Requires-Python: >=3.10
9
+ Description-Content-Type: text/markdown
10
+
11
+ # 51Degrees IP Intelligence Engines - OnPremise
12
+
13
+ ![51Degrees](https://51degrees.com/img/logo.png?utm_source=github&utm_medium=readme&utm_campaign=51degrees-python&utm_content=fiftyone_ipintelligence_onpremise-readme.md&utm_term=51degrees-ip-intelligence-engines-onpremise "Data rewards the curious") **Python IP Intelligence**
14
+
15
+ [Developer Documentation](https://51degrees.com/ip-intelligence-python/index.html?utm_source=github&utm_medium=readme&utm_campaign=51degrees-python&utm_content=fiftyone_ipintelligence_onpremise-readme.md&utm_term=51degrees-ip-intelligence-engines-onpremise "developer documentation")
16
+
17
+ ## Introduction
18
+
19
+ This package resolves IP addresses to location, network and registration
20
+ information using a local `.ipi` data file and the
21
+ [51Degrees Pipeline API](https://51degrees.com/documentation/index.html?utm_source=github&utm_medium=readme&utm_campaign=51degrees-python&utm_content=fiftyone_ipintelligence_onpremise-readme.md&utm_term=introduction).
22
+
23
+ The native [ip-intelligence-cxx](https://github.com/51Degrees/ip-intelligence-cxx)
24
+ library is included as a git submodule and wrapped with SWIG.
25
+
26
+ ## Building
27
+
28
+ The SWIG generated wrapper (`ipi_python_wrap.cxx` and
29
+ `IpIntelligenceEngineModule.py`) is committed to the repository so SWIG is
30
+ only needed when regenerating it (run `PreBuild.bat` / `PreBuild.sh`).
31
+
32
+ A C++17 compiler is required to build the native extension:
33
+
34
+ ```
35
+ git submodule update --init --recursive
36
+ python setup.py build_clib build_ext
37
+ ```
38
+
39
+ ## Data files
40
+
41
+ The on-premise engine requires a `.ipi` data file. A Lite data file can be
42
+ downloaded from
43
+ [51Degrees](https://51ddatafiles.blob.core.windows.net/enterpriseipi/51Degrees-LiteIpiV41.ipi.gz),
44
+ see also the [ip-intelligence-data](https://github.com/51Degrees/ip-intelligence-data)
45
+ repository which is included as a nested submodule and contains evidence
46
+ files for testing.
47
+
48
+ ## Usage
49
+
50
+ ```python
51
+ from fiftyone_ipintelligence_onpremise.ipintelligence_onpremise_pipelinebuilder import IpIntelligenceOnPremisePipelineBuilder
52
+
53
+ pipeline = IpIntelligenceOnPremisePipelineBuilder(
54
+ data_file_path="51Degrees-LiteIpiV41.ipi",
55
+ licence_keys="",
56
+ usage_sharing=False).build()
57
+
58
+ flowdata = pipeline.create_flowdata()
59
+ flowdata.evidence.add("query.client-ip", "185.28.167.78")
60
+ flowdata.process()
61
+ print(flowdata.ip.registeredname.value())
62
+ ```
@@ -0,0 +1,3 @@
1
+ [build-system]
2
+ requires = ["setuptools>=42", "wheel", "Cython"]
3
+ build-backend = "setuptools.build_meta"
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
@@ -0,0 +1,265 @@
1
+ # *********************************************************************
2
+ # This Original Work is copyright of 51 Degrees Mobile Experts Limited.
3
+ # Copyright 2026 51 Degrees Mobile Experts Limited, Davidson House,
4
+ # Forbury Square, Reading, Berkshire, United Kingdom RG1 3EU.
5
+ #
6
+ # This Original Work is licensed under the European Union Public Licence
7
+ # (EUPL) 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
+
23
+ """
24
+ setup.py file for SWIG
25
+ """
26
+ import sys
27
+ import platform
28
+ from setuptools import setup, Extension
29
+ from setuptools.command import develop
30
+ from distutils import sysconfig
31
+ from Cython.Distutils import build_ext
32
+ from glob import glob
33
+ import os
34
+ import io
35
+ import shutil
36
+
37
+ # Read a text file and return the content as a string.
38
+ def read(file_name):
39
+
40
+ """Read a text file and return the content as a string."""
41
+ try:
42
+ with io.open(
43
+ os.path.join(os.path.dirname(__file__), file_name), encoding="utf-8"
44
+ ) as f:
45
+ return f.read().strip()
46
+ except:
47
+ return "0.0.0"
48
+
49
+ def get_version():
50
+
51
+ version = None
52
+
53
+ # Try to get the correct version from platform.
54
+ is_64bits = sys.maxsize > 2**32
55
+ if is_64bits:
56
+ if 'Windows' in platform.system():
57
+ version = "win_64_"
58
+ if 'Linux' in platform.system():
59
+ version = "linux_64_"
60
+ if 'Darwin' in platform.system():
61
+ version = "darwin_64_"
62
+ else:
63
+ if 'Windows' in platform.system():
64
+ version = "win_32_"
65
+ if 'Linux' in platform.system():
66
+ version = "linux_32_"
67
+ if 'Darwin' in platform.system():
68
+ # No 32 bit python on Mac
69
+ version = None
70
+ raise Exception("Sorry, No 32 bit Python on Mac")
71
+
72
+ python_version = str(sys.version_info[0])
73
+ return version + python_version
74
+
75
+ class NoSuffixBuilder(build_ext):
76
+ def get_ext_filename(self, ext_name):
77
+ filename = super().get_ext_filename(ext_name)
78
+ suffix = sysconfig.get_config_var('EXT_SUFFIX')
79
+ if suffix is None:
80
+ suffix = sysconfig.get_config_var('SO')
81
+
82
+ print("**" + filename + "**\r\n")
83
+ print("**" + suffix + "**\r\n")
84
+
85
+ # Get the version from the suffix.
86
+ version = get_version()
87
+
88
+ ext = os.path.splitext(filename)[1]
89
+
90
+ if self.inplace:
91
+ return "./" + filename.replace(suffix, "") + ext
92
+ else:
93
+ return filename.replace(suffix, "") + ext
94
+
95
+ # IP intelligence data files are large so 64 bit file offsets must be
96
+ # used when reading them. All the native libraries (wrapper, C++ and C)
97
+ # must be compiled with the same setting.
98
+ #
99
+ # FIFTYONE_DEGREES_REDUCED_FILE must also be defined to match the cxx
100
+ # CMake build (option ReducedFile, ON by default). It changes on-disk
101
+ # struct layouts (see common-cxx profile.h / value.h) for the reduced
102
+ # data file format used by 4.5 and later data files. The .NET and Java
103
+ # bindings build the cxx via CMake and so inherit this define; the Python
104
+ # build must set it explicitly or it reads the data file with the wrong
105
+ # struct layout (empty results and crashes). All three native libraries
106
+ # (wrapper, C++ and C) must be compiled with the same setting.
107
+
108
+ def stage_native_source():
109
+
110
+ """Copy the native source this engine is built from into the package.
111
+
112
+ The source is kept once, in the cxx submodule at the root of
113
+ 51degrees-python (51degrees-cxx), and a package can only build and ship
114
+ files inside its own folder, so the parts it needs are copied here and the
115
+ source distribution carries them. Building from a source distribution has
116
+ the copy already and no cxx folder above it, so nothing is copied then."""
117
+
118
+ here = os.path.dirname(os.path.abspath(__file__))
119
+ source = os.path.join(here, "..", "..", "cxx", "src")
120
+ dest = os.path.join(here, "src", "fiftyone_ipintelligence_onpremise", "cxx", "src")
121
+ if os.path.isdir(source) == False:
122
+ if os.path.isdir(dest) == False:
123
+ raise RuntimeError(
124
+ "No native source: check out the cxx submodule at the root "
125
+ "of 51degrees-python (git submodule update --init cxx).")
126
+ return
127
+ # IP Intelligence needs common and its own folder only. Each package compiles
128
+ # its own copy of common, because IP Intelligence builds it with settings
129
+ # that change structure sizes.
130
+ for folder in ('common', 'ipi'):
131
+ target = os.path.join(dest, folder)
132
+ shutil.rmtree(target, ignore_errors=True)
133
+ shutil.copytree(os.path.join(source, folder), target)
134
+
135
+
136
+ stage_native_source()
137
+
138
+ define_macros = [
139
+ ('FIFTYONE_DEGREES_LARGE_DATA_FILE_SUPPORT', '1'),
140
+ ('FIFTYONE_DEGREES_REDUCED_FILE', '1')]
141
+ extra_compile_args = [
142
+ '-DFIFTYONE_DEGREES_LARGE_DATA_FILE_SUPPORT=1',
143
+ '-DFIFTYONE_DEGREES_REDUCED_FILE=1']
144
+ extra_link_args = []
145
+ # Extra compilation flags for C library
146
+ cflags = [
147
+ '-DFIFTYONE_DEGREES_LARGE_DATA_FILE_SUPPORT=1',
148
+ '-DFIFTYONE_DEGREES_REDUCED_FILE=1']
149
+
150
+ if sys.platform != "win32":
151
+ extra_compile_args.extend([
152
+ '-fPIC',
153
+ '-std=gnu++17',
154
+ '-Wall',
155
+ '-D_FILE_OFFSET_BITS=64',
156
+ # '-Werror'
157
+ ])
158
+ cflags.extend([
159
+ '-std=gnu11',
160
+ '-Wall',
161
+ '-D_FILE_OFFSET_BITS=64',
162
+ # '-Werror',
163
+ '-Wno-strict-prototypes',
164
+ '-Wno-unused-variable',
165
+ '-Wno-missing-braces',
166
+ '-Wno-strict-aliasing'
167
+ ])
168
+
169
+
170
+ if sys.platform == "win32":
171
+ extra_compile_args.extend([
172
+ '/std:c++17',
173
+ '/D_CRT_SECURE_NO_WARNINGS',
174
+ '/D_UNICODE',
175
+ '/DUNICODE',
176
+ '/W4',
177
+ # '/WX',
178
+ '/wd4127',
179
+ '/wd4456',
180
+ '/wd4701',
181
+ '/wd4703',
182
+ '/wd4706'
183
+ ])
184
+ cflags.extend([
185
+ '/D_CRT_SECURE_NO_WARNINGS',
186
+ '/D_UNICODE',
187
+ '/DUNICODE',
188
+ '/W4',
189
+ # '/WX'
190
+ ])
191
+ extra_link_args.extend([
192
+ '/WX'
193
+ ])
194
+
195
+ if sys.platform == "linux":
196
+ extra_link_args.extend([
197
+ '-latomic'
198
+ ])
199
+
200
+ if sys.platform == 'darwin':
201
+ # This is flaged in CPython
202
+ extra_compile_args.extend([
203
+ '-DGCC_ENABLE_CPP_EXCEPTIONS=YES'
204
+ ])
205
+ if sys.version_info[0] == 3 and sys.version_info[1] == 8:
206
+ extra_compile_args.extend([
207
+ '-Wno-deprecated-declarations'
208
+ ])
209
+ cflags.extend([
210
+ '-Wno-atomic-alignment'
211
+ ])
212
+
213
+ IpIntelligenceEngineModule = Extension('_IpIntelligenceEngineModule',
214
+ sources=[
215
+ # Python Wrapper
216
+ # "fiftyone_ipintelligence_onpremise/ipi_python.i"
217
+ "src/fiftyone_ipintelligence_onpremise/ipi_python_wrap.cxx"
218
+ ],
219
+ define_macros=define_macros,
220
+ extra_compile_args=extra_compile_args,
221
+ extra_link_args=extra_link_args,
222
+ language='c++',
223
+ )
224
+
225
+ cpplib = ('cpplib', {
226
+ 'sources': [
227
+ # Common C++
228
+ *glob("src/fiftyone_ipintelligence_onpremise/cxx/src/common/*.cpp"),
229
+ # IP Intelligence C++
230
+ *glob("src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/*.cpp"),
231
+ ],
232
+ 'cflags': extra_compile_args
233
+ })
234
+
235
+ clib = ('clib', {
236
+ 'sources': [
237
+ # Common C
238
+ *glob("src/fiftyone_ipintelligence_onpremise/cxx/src/common/*.c"),
239
+ # IP Intelligence C
240
+ *glob("src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/*.c"),
241
+ # IP Graph C
242
+ *glob("src/fiftyone_ipintelligence_onpremise/cxx/src/ipi/graph/*.c"),
243
+ ],
244
+ 'cflags': cflags
245
+ })
246
+
247
+ setup(
248
+ cmdclass={"build_ext": NoSuffixBuilder},
249
+ name="fiftyone_ipintelligence_onpremise",
250
+ version=read("version.txt"),
251
+ author="51Degrees Engineering",
252
+ author_email="engineering@51degrees.com",
253
+ description = """This project contains the 51Degrees IP Intelligence OnPremise engine that can be used with the 51Degrees Pipeline API. The Pipeline is a generic web request intelligence and data processing solution with the ability to add a range of 51Degrees and/or custom plug ins (Engines)""",
254
+ long_description=read("readme.md"),
255
+ long_description_content_type="text/markdown",
256
+ python_requires=">=3.10",
257
+ license="EUPL-1.2",
258
+ libraries=[cpplib, clib],
259
+ ext_package="fiftyone_ipintelligence_onpremise",
260
+ ext_modules=[IpIntelligenceEngineModule],
261
+ py_modules=["fiftyone_ipintelligence_onpremise"],
262
+ packages=["fiftyone_ipintelligence_onpremise"],
263
+ package_dir={"": "src"},
264
+ install_requires=["fiftyone_ipintelligence_shared", "fiftyone_pipeline_engines_fiftyone"],
265
+ )