eapol/eapol_framework/eapol_common/am/include/abs_eap_am_bloom_algorithm_store.h
changeset 52 c23bdf5a328a
parent 33 938269283a16
equal deleted inserted replaced
51:e863583e6720 52:c23bdf5a328a
    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.