Exemple #1
0
bool PrioritySingleBitFilter::Apply( BitKey & bit_list,
                                     STEP_CODE_DATA_STRUCT & io_sdc )
{
    bool l_modified = false;

    // Do priority bit.
    for ( size_t i = 0; i < iv_bitList.size(); i++ )
    {
        BitKey l_key = iv_bitList[i];
        if ( bit_list.isSubset(l_key) )
        {
            l_modified = true;
            bit_list = l_key;
            break;
        }
    }
    // Do single bit filter portion.
    if ( !l_modified )
    {
        while ( 1 < bit_list.size() )
        {
            l_modified = true;
            bit_list.removeBit();
        }
    }
    return l_modified;
}
Exemple #2
0
bool FilterPriority::Apply( BitKey & ioBitList, STEP_CODE_DATA_STRUCT & io_sdc )
{
    bool modified = false;
    if( ioBitList.isSubset(ivBitKey) )
    {
        ioBitList = ivBitKey;
        modified = true;
    }
    return modified;
}
Exemple #3
0
bool FilterTranspose::Undo(BitKey & iBitList)
{
    bool result = false;
    BitKey testbl(ivSingleBitPos);
    if(iBitList.isSubset(testbl))
    {
        iBitList = ivBitKey;
        result = true;
    }

    return result;
}