extern uint16_t eo_cfg_nvsEP_as_onemais_hashfunction_id2index(uint16_t id)
{

    #define IDTABLESSIZE        (EOK_cfg_nvsEP_as_any_con_sxx_snvindex_TOTALnumber*strainOneMais_TOTALnumber)
    
    #define IDTABLEMSIZE        (EOK_cfg_nvsEP_as_any_con_mxx_mnvindex_TOTALnumber*maisOneMais_TOTALnumber)    
    
    #define IDTABLESIZE         (IDTABLESSIZE+IDTABLEMSIZE)
    
    uint16_t index;
    
    static const uint16_t s_idtable[] = 
    { 
        // s00
//         EOK_cfg_nvsEP_as_any_con_body_NVID_sxx_sconfig__mode(0),                    EOK_cfg_nvsEP_as_any_con_body_NVID_sxx_sconfig__datarate(0),
//         EOK_cfg_nvsEP_as_any_con_body_NVID_sxx_sconfig__signaloncefullscale(0),     EOK_cfg_nvsEP_as_any_con_body_NVID_sxx_sstatus__fullscale(0), 
//         EOK_cfg_nvsEP_as_any_con_body_NVID_sxx_sstatus__calibratedvalues(0),        EOK_cfg_nvsEP_as_any_con_body_NVID_sxx_sstatus__uncalibratedvalues(0)  
        
        // m00
         EOK_cfg_nvsEP_as_any_con_body_NVID_mxx_mconfig(0),                          EOK_cfg_nvsEP_as_any_con_body_NVID_mxx_mconfig__mode(0),
         EOK_cfg_nvsEP_as_any_con_body_NVID_mxx_mconfig__datarate(0),                EOK_cfg_nvsEP_as_any_con_body_NVID_mxx_mconfig__resolution(0),
         EOK_cfg_nvsEP_as_any_con_body_NVID_mxx_mstatus(0),                          EOK_cfg_nvsEP_as_any_con_body_NVID_mxx_mstatus__the15values(0) 
    
    };  EO_VERIFYsizeof(s_idtable, sizeof(uint16_t)*(IDTABLESIZE));
    
    index = s_hash(id);
    
   
    if((index < (IDTABLESIZE)) && (id == s_idtable[index]) )
    {
        return(index);
    }
    else
    {
        return(EOK_uint16dummy);
    }

      
}
Beispiel #2
0
 unsigned int hash() const {
     return s_hash(m_name)%std::numeric_limits<unsigned int>::max();
 }