Device: Provide operator!= counterparts to operator== for DeviceQualifier

Makes comparison logic symmetric
This commit is contained in:
Lioncash 2017-06-03 19:32:46 -04:00
parent 4b53093acb
commit 5862d1fc41
2 changed files with 15 additions and 1 deletions

View File

@ -120,11 +120,21 @@ bool DeviceQualifier::operator==(const Device* const dev) const
return false;
}
bool DeviceQualifier::operator!=(const Device* const dev) const
{
return !operator==(dev);
}
bool DeviceQualifier::operator==(const DeviceQualifier& devq) const
{
return std::tie(cid, name, source) == std::tie(devq.cid, devq.name, devq.source);
}
bool DeviceQualifier::operator!=(const DeviceQualifier& devq) const
{
return !operator==(devq);
}
std::shared_ptr<Device> DeviceContainer::FindDevice(const DeviceQualifier& devq) const
{
std::lock_guard<std::mutex> lk(m_devices_mutex);

View File

@ -136,8 +136,12 @@ public:
void FromDevice(const Device* const dev);
void FromString(const std::string& str);
std::string ToString() const;
bool operator==(const DeviceQualifier& devq) const;
bool operator==(const Device* const dev) const;
bool operator!=(const DeviceQualifier& devq) const;
bool operator==(const Device* dev) const;
bool operator!=(const Device* dev) const;
std::string source;
int cid;