22 #if !defined(_ABS_EAP_AM_BLOOM_ALGORITHM_STORE_H_) |
22 #if !defined(_ABS_EAP_AM_BLOOM_ALGORITHM_STORE_H_) |
23 #define _ABS_EAP_AM_BLOOM_ALGORITHM_STORE_H_ |
23 #define _ABS_EAP_AM_BLOOM_ALGORITHM_STORE_H_ |
24 |
24 |
25 |
25 |
26 #include "eap_tools.h" |
26 #include "eap_tools.h" |
|
27 #include "eap_am_export.h" |
|
28 // Start: added by script change_export_macros.sh. |
|
29 #if defined(EAP_NO_EXPORT_ABS_EAP_AM_BLOOM_ALGORITHM_STORE_H) |
|
30 #define EAP_CLASS_VISIBILITY_ABS_EAP_AM_BLOOM_ALGORITHM_STORE_H EAP_NONSHARABLE |
|
31 #define EAP_FUNC_VISIBILITY_ABS_EAP_AM_BLOOM_ALGORITHM_STORE_H |
|
32 #define EAP_C_FUNC_VISIBILITY_ABS_EAP_AM_BLOOM_ALGORITHM_STORE_H |
|
33 #define EAP_FUNC_EXPORT_ABS_EAP_AM_BLOOM_ALGORITHM_STORE_H |
|
34 #define EAP_C_FUNC_EXPORT_ABS_EAP_AM_BLOOM_ALGORITHM_STORE_H |
|
35 #elif defined(EAP_EXPORT_ABS_EAP_AM_BLOOM_ALGORITHM_STORE_H) |
|
36 #define EAP_CLASS_VISIBILITY_ABS_EAP_AM_BLOOM_ALGORITHM_STORE_H EAP_EXPORT |
|
37 #define EAP_FUNC_VISIBILITY_ABS_EAP_AM_BLOOM_ALGORITHM_STORE_H EAP_FUNC_EXPORT |
|
38 #define EAP_C_FUNC_VISIBILITY_ABS_EAP_AM_BLOOM_ALGORITHM_STORE_H EAP_C_FUNC_EXPORT |
|
39 #define EAP_FUNC_EXPORT_ABS_EAP_AM_BLOOM_ALGORITHM_STORE_H EAP_FUNC_EXPORT |
|
40 #define EAP_C_FUNC_EXPORT_ABS_EAP_AM_BLOOM_ALGORITHM_STORE_H EAP_C_FUNC_EXPORT |
|
41 #else |
|
42 #define EAP_CLASS_VISIBILITY_ABS_EAP_AM_BLOOM_ALGORITHM_STORE_H EAP_IMPORT |
|
43 #define EAP_FUNC_VISIBILITY_ABS_EAP_AM_BLOOM_ALGORITHM_STORE_H EAP_FUNC_IMPORT |
|
44 #define EAP_C_FUNC_VISIBILITY_ABS_EAP_AM_BLOOM_ALGORITHM_STORE_H EAP_C_FUNC_IMPORT |
|
45 #define EAP_FUNC_EXPORT_ABS_EAP_AM_BLOOM_ALGORITHM_STORE_H |
|
46 #define EAP_C_FUNC_EXPORT_ABS_EAP_AM_BLOOM_ALGORITHM_STORE_H |
|
47 #endif |
|
48 // End: added by script change_export_macros.sh. |
|
49 |
27 |
50 |
28 //-------------------------------------------------- |
51 //-------------------------------------------------- |
29 |
52 |
30 /// This is interface to bit store of the Bloom filter algorithm. |
53 /// This is interface to bit store of the Bloom filter algorithm. |
31 /** The bit store should be divided to two stores. |
54 /** The bit store should be divided to two stores. |
38 * much faster. Probability of false filtering is saturation raised power to bit index count. |
61 * much faster. Probability of false filtering is saturation raised power to bit index count. |
39 * Saturation is count of set bits divided by size of bit store. |
62 * Saturation is count of set bits divided by size of bit store. |
40 * Bit index count is count of separate indexes extracted from hash digest. |
63 * Bit index count is count of separate indexes extracted from hash digest. |
41 * Each index is n bits long. The size of the bit store is 2^n bits. |
64 * Each index is n bits long. The size of the bit store is 2^n bits. |
42 */ |
65 */ |
43 class EAP_EXPORT abs_eap_am_bloom_algorithm_store_c |
66 class EAP_CLASS_VISIBILITY_ABS_EAP_AM_BLOOM_ALGORITHM_STORE_H abs_eap_am_bloom_algorithm_store_c |
44 { |
67 { |
45 |
68 |
46 private: |
69 private: |
47 |
70 |
48 /** |
71 /** |
54 public: |
77 public: |
55 |
78 |
56 /** |
79 /** |
57 * The destructor of the abs_eap_am_bloom_algorithm_store_c class does nothing special. |
80 * The destructor of the abs_eap_am_bloom_algorithm_store_c class does nothing special. |
58 */ |
81 */ |
59 EAP_FUNC_IMPORT virtual ~abs_eap_am_bloom_algorithm_store_c() |
82 EAP_FUNC_VISIBILITY_ABS_EAP_AM_BLOOM_ALGORITHM_STORE_H virtual ~abs_eap_am_bloom_algorithm_store_c() |
60 { |
83 { |
61 } |
84 } |
62 |
85 |
63 /** |
86 /** |
64 * The constructor of the abs_eap_am_bloom_algorithm_store_c does nothing special. |
87 * The constructor of the abs_eap_am_bloom_algorithm_store_c does nothing special. |
65 */ |
88 */ |
66 EAP_FUNC_IMPORT abs_eap_am_bloom_algorithm_store_c() |
89 EAP_FUNC_VISIBILITY_ABS_EAP_AM_BLOOM_ALGORITHM_STORE_H abs_eap_am_bloom_algorithm_store_c() |
67 { |
90 { |
68 } |
91 } |
69 |
92 |
70 /** |
93 /** |
71 * This function sets the name of the bit store. |
94 * This function sets the name of the bit store. |