22 #include <hwsd/types.h>    24 #include <lunchbox/referenced.h>     38 class Filter : 
public lunchbox::Referenced
    45     HWSD_API 
virtual ~Filter();
    53     HWSD_API FilterPtr operator|(FilterPtr rhs);
    61     HWSD_API FilterPtr operator|=(FilterPtr rhs);
    74     HWSD_API 
virtual bool operator()(
const GPUInfos& current,
    77     HWSD_API 
virtual bool operator()(
const NetInfos& current,
    81     detail::Filter* 
const impl_;
    85 inline FilterPtr operator|(FilterPtr a, FilterPtr b)
    99     HWSD_API 
virtual bool operator()(
const GPUInfos& current,
   102     HWSD_API 
virtual bool operator()(
const NetInfos& current,
   116     HWSD_API 
virtual bool operator()(
const GPUInfos& current,
   126     HWSD_API 
virtual ~SessionFilter();
   129     HWSD_API 
virtual bool operator()(
const GPUInfos& current,
   132     HWSD_API 
virtual bool operator()(
const NetInfos& current,
   136     detail::SessionFilter* 
const impl_;
   147     HWSD_API 
explicit GPUFilter(
const std::string& regex);
   148     HWSD_API 
virtual ~GPUFilter();
   154     HWSD_API 
virtual bool operator()(
const hwsd::GPUInfos& current,
   158     detail::GPUFilter* 
const impl_;
   165     HWSD_API 
NetFilter(
const lunchbox::Strings& prefixes, 
const uint32_t type);
   166     HWSD_API 
virtual ~NetFilter();
   172     HWSD_API 
virtual bool operator()(
const hwsd::NetInfos& current,
   176     detail::NetFilter* 
const impl_;
   179 #endif // HWSD_FILTER_H Defines export visibility macros for library hwsd. 
 
Filter overlapping duplicates with different GPU types. 
 
Filters for a specific session. 
 
A structure containing network-specific information. 
 
Base class for all discovery filters. 
 
Filter for network interfaces matching prefixes and/or type. 
 
A structure containing GPU-specific information. 
 
Filters for a specific GPU regex. 
 
Filters all duplicates during discovery.