class axl::sl::BmhFind

#include <axl_sl_BmhFind.h>

class BmhFind
{
public:
    // construction

    BmhFind();

    // methods

    void
    clear();

    bool
    isEmpty();

    size_t
    getPatternSize();

    const void*
    getPattern();

    bool
    setPattern(
        const void* p,
        size_t size,
        bool doMatchCase = true
        );

    size_t
    find(
        const void* p,
        size_t size
        );

    size_t
    reverseFind(
        const void* p,
        size_t size
        );

    size_t
    incrementalFind(
        const void* p,
        size_t size
        );

    size_t
    reverseIncrementalFind(
        const void* p,
        size_t size
        );

    void
    resetIncrementalFind(size_t incFindOffset = 0);

    size_t
    getIncrementalFindOffset();

    size_t
    getIncrementalFindTailSize();
};