template class axl::sys::lnx::UdevEnumeratorBase

#include <axl_sys_lnx_UdevEnumerator.h>

template <typename T>
class UdevEnumeratorBase: public axl::sl::Handle
{
public:
    // construction

    UdevEnumeratorBase();
    UdevEnumeratorBase(udev_enumerate* h);

    // methods

    void
    addRef();

    udev*
    getUdev();

    bool
    addMatchSubsystem(const sl::StringRef& subsystem);

    bool
    addNoMatchSubsystem(const sl::StringRef& subsystem);

    bool
    addMatchSysAttr(
        const sl::StringRef& sysAttr,
        const sl::StringRef& value
        );

    bool
    addNoMatchSysAttr(
        const sl::StringRef& sysAttr,
        const sl::StringRef& value
        );

    bool
    addMatchProperty(
        const sl::StringRef& prop,
        const sl::StringRef& value
        );

    bool
    addMatchSysName(const sl::StringRef& sysName);

    bool
    addMatchTag(const sl::StringRef& tag);

    bool
    addMatchParentDevice(udev_device* parentDevice);

    bool
    addMatchIsInitialized();

    bool
    scanDevices();

    bool
    scanSubsystems();

    bool
    addSysPath(const sl::StringRef& sysPath);

    udev_list_entry*
    getListEntry();
};

Inherited Members

public:
    // typedefs

    typedef T H;

    // methods

    operator T() const;

    T
    operator->() const;

    const Handle&
    operator=(T h);

    bool
    isOpen() const;

    void
    close();

    void
    attach(T h);

    T
    detach();

    T*
    p();

    static
    T
    getInvalidHandle();