From e8bd440773c67a55b2aebd68318d7344cbc3b27a Mon Sep 17 00:00:00 2001 From: Bill Jordan Date: Thu, 9 Jul 2020 12:34:23 -0400 Subject: [PATCH] Don't allow copy or moving Sysman related objects. Change-Id: I70dd97bffa1c4d08f05eb796c6d6a2eb66f06f4b Signed-off-by: Bill Jordan --- level_zero/tools/source/sysman/engine/engine_imp.h | 2 +- .../tools/source/sysman/engine/linux/os_engine_imp.h | 2 +- .../tools/source/sysman/fabric_port/fabric_port_imp.h | 2 +- .../source/sysman/fabric_port/linux/os_fabric_port_imp.h | 2 +- .../sysman/fabric_port/windows/os_fabric_port_imp.h | 2 +- level_zero/tools/source/sysman/frequency/frequency_imp.h | 8 +++----- .../source/sysman/frequency/linux/os_frequency_imp.h | 2 +- level_zero/tools/source/sysman/linux/os_sysman_imp.h | 2 +- level_zero/tools/source/sysman/linux/pmt.h | 2 +- .../tools/source/sysman/memory/linux/os_memory_imp.h | 2 +- level_zero/tools/source/sysman/memory/memory_imp.h | 5 ++--- level_zero/tools/source/sysman/pci/linux/os_pci_imp.h | 2 +- level_zero/tools/source/sysman/pci/pci_imp.h | 8 +++----- .../tools/source/sysman/power/linux/os_power_imp.h | 2 +- level_zero/tools/source/sysman/power/power_imp.h | 2 +- level_zero/tools/source/sysman/ras/linux/os_ras_imp.h | 2 +- level_zero/tools/source/sysman/ras/ras_imp.h | 2 +- .../source/sysman/scheduler/linux/os_scheduler_imp.h | 2 +- level_zero/tools/source/sysman/scheduler/scheduler_imp.h | 2 +- .../tools/source/sysman/standby/linux/os_standby_imp.h | 2 +- level_zero/tools/source/sysman/standby/standby_imp.h | 7 ++----- .../sysman/sysman_device/linux/os_sysman_device_imp.h | 2 +- .../source/sysman/sysman_device/sysman_device_imp.h | 2 +- .../sysman_device/windows/os_sysman_device_imp.cpp | 9 ++++----- level_zero/tools/source/sysman/sysman_imp.h | 6 +++--- .../source/sysman/temperature/linux/os_temperature_imp.h | 2 +- .../tools/source/sysman/temperature/temperature_imp.h | 2 +- level_zero/tools/source/sysman/windows/os_sysman_imp.h | 9 ++++----- 28 files changed, 42 insertions(+), 52 deletions(-) diff --git a/level_zero/tools/source/sysman/engine/engine_imp.h b/level_zero/tools/source/sysman/engine/engine_imp.h index 234988c8bd..25d86d8af6 100644 --- a/level_zero/tools/source/sysman/engine/engine_imp.h +++ b/level_zero/tools/source/sysman/engine/engine_imp.h @@ -13,7 +13,7 @@ #include "level_zero/tools/source/sysman/engine/os_engine.h" #include namespace L0 { -class EngineImp : public NEO::NonCopyableClass, public Engine { +class EngineImp : public Engine, NEO::NonCopyableOrMovableClass { public: ze_result_t engineGetProperties(zet_engine_properties_t *pProperties) override; ze_result_t engineGetActivity(zet_engine_stats_t *pStats) override; diff --git a/level_zero/tools/source/sysman/engine/linux/os_engine_imp.h b/level_zero/tools/source/sysman/engine/linux/os_engine_imp.h index a377816dbb..0c22740fc7 100644 --- a/level_zero/tools/source/sysman/engine/linux/os_engine_imp.h +++ b/level_zero/tools/source/sysman/engine/linux/os_engine_imp.h @@ -13,7 +13,7 @@ #include "sysman/linux/os_sysman_imp.h" namespace L0 { -class LinuxEngineImp : public OsEngine, public NEO::NonCopyableClass { +class LinuxEngineImp : public OsEngine, NEO::NonCopyableOrMovableClass { public: ze_result_t getActiveTime(uint64_t &activeTime) override; ze_result_t getEngineGroup(zet_engine_group_t &engineGroup) override; diff --git a/level_zero/tools/source/sysman/fabric_port/fabric_port_imp.h b/level_zero/tools/source/sysman/fabric_port/fabric_port_imp.h index 87e1b6beb0..584dd7b4f3 100644 --- a/level_zero/tools/source/sysman/fabric_port/fabric_port_imp.h +++ b/level_zero/tools/source/sysman/fabric_port/fabric_port_imp.h @@ -15,7 +15,7 @@ namespace L0 { -class FabricPortImp : public FabricPort, public NEO::NonCopyableClass { +class FabricPortImp : public FabricPort, NEO::NonCopyableOrMovableClass { public: ze_result_t fabricPortGetProperties(zet_fabric_port_properties_t *pProperties) override; ze_result_t fabricPortGetLinkType(ze_bool_t verbose, zet_fabric_link_type_t *pLinkType) override; diff --git a/level_zero/tools/source/sysman/fabric_port/linux/os_fabric_port_imp.h b/level_zero/tools/source/sysman/fabric_port/linux/os_fabric_port_imp.h index 0642c5dbed..6a9e8cc8b9 100644 --- a/level_zero/tools/source/sysman/fabric_port/linux/os_fabric_port_imp.h +++ b/level_zero/tools/source/sysman/fabric_port/linux/os_fabric_port_imp.h @@ -14,7 +14,7 @@ namespace L0 { -class LinuxFabricPortImp : public NEO::NonCopyableClass, public OsFabricPort { +class LinuxFabricPortImp : public OsFabricPort, NEO::NonCopyableOrMovableClass { public: ze_result_t getLinkType(ze_bool_t verbose, zet_fabric_link_type_t *pLinkType) override; ze_result_t getConfig(zet_fabric_port_config_t *pConfig) override; diff --git a/level_zero/tools/source/sysman/fabric_port/windows/os_fabric_port_imp.h b/level_zero/tools/source/sysman/fabric_port/windows/os_fabric_port_imp.h index 5c8593dcd6..4af08a71be 100644 --- a/level_zero/tools/source/sysman/fabric_port/windows/os_fabric_port_imp.h +++ b/level_zero/tools/source/sysman/fabric_port/windows/os_fabric_port_imp.h @@ -15,7 +15,7 @@ namespace L0 { -class WddmFabricPortImp : public NEO::NonCopyableClass, public OsFabricPort { +class WddmFabricPortImp : public OsFabricPort, NEO::NonCopyableOrMovableClass { public: ze_result_t getLinkType(ze_bool_t verbose, zet_fabric_link_type_t *pLinkType) override; ze_result_t getConfig(zet_fabric_port_config_t *pConfig) override; diff --git a/level_zero/tools/source/sysman/frequency/frequency_imp.h b/level_zero/tools/source/sysman/frequency/frequency_imp.h index 9c744cfb6d..6817274922 100644 --- a/level_zero/tools/source/sysman/frequency/frequency_imp.h +++ b/level_zero/tools/source/sysman/frequency/frequency_imp.h @@ -7,13 +7,15 @@ #pragma once +#include "shared/source/helpers/non_copyable_or_moveable.h" + #include "level_zero/tools/source/sysman/frequency/frequency.h" #include "level_zero/tools/source/sysman/frequency/os_frequency.h" #include namespace L0 { -class FrequencyImp : public Frequency { +class FrequencyImp : public Frequency, NEO::NonCopyableOrMovableClass { public: ze_result_t frequencyGetProperties(zet_freq_properties_t *pProperties) override; ze_result_t frequencyGetAvailableClocks(uint32_t *pCount, double *phFrequency) override; @@ -27,10 +29,6 @@ class FrequencyImp : public Frequency { OsFrequency *pOsFrequency = nullptr; void init(); - // Don't allow copies of the FrequencyImp object - FrequencyImp(const FrequencyImp &obj) = delete; - FrequencyImp &operator=(const FrequencyImp &obj) = delete; - private: static const double step; static const bool canControl; diff --git a/level_zero/tools/source/sysman/frequency/linux/os_frequency_imp.h b/level_zero/tools/source/sysman/frequency/linux/os_frequency_imp.h index 15ab95f109..4bb9f0b176 100644 --- a/level_zero/tools/source/sysman/frequency/linux/os_frequency_imp.h +++ b/level_zero/tools/source/sysman/frequency/linux/os_frequency_imp.h @@ -15,7 +15,7 @@ namespace L0 { -class LinuxFrequencyImp : public NEO::NonCopyableClass, public OsFrequency { +class LinuxFrequencyImp : public OsFrequency, NEO::NonCopyableOrMovableClass { public: ze_result_t getMin(double &min) override; ze_result_t setMin(double min) override; diff --git a/level_zero/tools/source/sysman/linux/os_sysman_imp.h b/level_zero/tools/source/sysman/linux/os_sysman_imp.h index f53b987960..a992c4565b 100644 --- a/level_zero/tools/source/sysman/linux/os_sysman_imp.h +++ b/level_zero/tools/source/sysman/linux/os_sysman_imp.h @@ -16,7 +16,7 @@ namespace L0 { -class LinuxSysmanImp : public OsSysman, public NEO::NonCopyableClass { +class LinuxSysmanImp : public OsSysman, NEO::NonCopyableOrMovableClass { public: LinuxSysmanImp(SysmanImp *pParentSysmanImp); ~LinuxSysmanImp() override; diff --git a/level_zero/tools/source/sysman/linux/pmt.h b/level_zero/tools/source/sysman/linux/pmt.h index e94d8903f0..d5895a2efc 100644 --- a/level_zero/tools/source/sysman/linux/pmt.h +++ b/level_zero/tools/source/sysman/linux/pmt.h @@ -14,7 +14,7 @@ namespace L0 { -class PlatformMonitoringTech : public NEO::NonCopyableClass { +class PlatformMonitoringTech : NEO::NonCopyableOrMovableClass { public: PlatformMonitoringTech() = default; virtual ~PlatformMonitoringTech(); diff --git a/level_zero/tools/source/sysman/memory/linux/os_memory_imp.h b/level_zero/tools/source/sysman/memory/linux/os_memory_imp.h index 182fe3705a..b2d5a6545a 100644 --- a/level_zero/tools/source/sysman/memory/linux/os_memory_imp.h +++ b/level_zero/tools/source/sysman/memory/linux/os_memory_imp.h @@ -14,7 +14,7 @@ namespace L0 { class SysfsAccess; -class LinuxMemoryImp : public OsMemory, public NEO::NonCopyableClass { +class LinuxMemoryImp : public OsMemory, NEO::NonCopyableOrMovableClass { public: ze_result_t getMemorySize(uint64_t &maxSize, uint64_t &allocSize) override; ze_result_t getMemHealth(zet_mem_health_t &memHealth) override; diff --git a/level_zero/tools/source/sysman/memory/memory_imp.h b/level_zero/tools/source/sysman/memory/memory_imp.h index 76bfd022cb..2cc6f43684 100644 --- a/level_zero/tools/source/sysman/memory/memory_imp.h +++ b/level_zero/tools/source/sysman/memory/memory_imp.h @@ -6,6 +6,7 @@ */ #pragma once +#include "shared/source/helpers/non_copyable_or_moveable.h" #include "level_zero/tools/source/sysman/memory/memory.h" #include "level_zero/tools/source/sysman/memory/os_memory.h" @@ -13,7 +14,7 @@ namespace L0 { -class MemoryImp : public Memory { +class MemoryImp : public Memory, NEO::NonCopyableOrMovableClass { public: ze_result_t memoryGetProperties(zet_mem_properties_t *pProperties) override; ze_result_t memoryGetBandwidth(zet_mem_bandwidth_t *pBandwidth) override; @@ -22,8 +23,6 @@ class MemoryImp : public Memory { MemoryImp(OsSysman *pOsSysman, ze_device_handle_t hDevice); ~MemoryImp() override; - MemoryImp(const MemoryImp &obj) = delete; - MemoryImp &operator=(const MemoryImp &obj) = delete; MemoryImp() = default; void init(); OsMemory *pOsMemory = nullptr; diff --git a/level_zero/tools/source/sysman/pci/linux/os_pci_imp.h b/level_zero/tools/source/sysman/pci/linux/os_pci_imp.h index 312d57d65b..fe1afa3358 100644 --- a/level_zero/tools/source/sysman/pci/linux/os_pci_imp.h +++ b/level_zero/tools/source/sysman/pci/linux/os_pci_imp.h @@ -14,7 +14,7 @@ namespace L0 { class SysfsAccess; -class LinuxPciImp : public NEO::NonCopyableClass, public OsPci { +class LinuxPciImp : public OsPci, NEO::NonCopyableOrMovableClass { public: ze_result_t getPciBdf(std::string &bdf) override; ze_result_t getMaxLinkSpeed(double &maxLinkSpeed) override; diff --git a/level_zero/tools/source/sysman/pci/pci_imp.h b/level_zero/tools/source/sysman/pci/pci_imp.h index d913c75094..00d376f109 100644 --- a/level_zero/tools/source/sysman/pci/pci_imp.h +++ b/level_zero/tools/source/sysman/pci/pci_imp.h @@ -6,6 +6,8 @@ */ #pragma once +#include "shared/source/helpers/non_copyable_or_moveable.h" + #include #include "os_pci.h" @@ -15,7 +17,7 @@ namespace L0 { -class PciImp : public Pci { +class PciImp : public Pci, NEO::NonCopyableOrMovableClass { public: void init() override; ze_result_t pciStaticProperties(zet_pci_properties_t *pProperties) override; @@ -26,10 +28,6 @@ class PciImp : public Pci { ~PciImp() override; OsPci *pOsPci = nullptr; - // Don't allow copies of the PciImp object - PciImp(const PciImp &obj) = delete; - PciImp &operator=(const PciImp &obj) = delete; - private: OsSysman *pOsSysman = nullptr; zet_pci_properties_t pciProperties = {}; diff --git a/level_zero/tools/source/sysman/power/linux/os_power_imp.h b/level_zero/tools/source/sysman/power/linux/os_power_imp.h index e2d591f9ad..abeb539395 100644 --- a/level_zero/tools/source/sysman/power/linux/os_power_imp.h +++ b/level_zero/tools/source/sysman/power/linux/os_power_imp.h @@ -14,7 +14,7 @@ namespace L0 { class SysfsAccess; class PlatformMonitoringTech; -class LinuxPowerImp : public OsPower, public NEO::NonCopyableClass { +class LinuxPowerImp : public OsPower, NEO::NonCopyableOrMovableClass { public: ze_result_t getEnergyCounter(uint64_t &energy) override; ze_result_t getEnergyThreshold(zet_energy_threshold_t *pThreshold) override; diff --git a/level_zero/tools/source/sysman/power/power_imp.h b/level_zero/tools/source/sysman/power/power_imp.h index b185e05eb9..3a9c60f47a 100644 --- a/level_zero/tools/source/sysman/power/power_imp.h +++ b/level_zero/tools/source/sysman/power/power_imp.h @@ -13,7 +13,7 @@ #include "level_zero/tools/source/sysman/power/power.h" #include namespace L0 { -class PowerImp : public NEO::NonCopyableClass, public Power { +class PowerImp : public Power, NEO::NonCopyableOrMovableClass { public: ze_result_t powerGetProperties(zet_power_properties_t *pProperties) override; ze_result_t powerGetEnergyCounter(zet_power_energy_counter_t *pEnergy) override; diff --git a/level_zero/tools/source/sysman/ras/linux/os_ras_imp.h b/level_zero/tools/source/sysman/ras/linux/os_ras_imp.h index 1eb7d3aac7..7dafc87a06 100644 --- a/level_zero/tools/source/sysman/ras/linux/os_ras_imp.h +++ b/level_zero/tools/source/sysman/ras/linux/os_ras_imp.h @@ -16,7 +16,7 @@ namespace L0 { class FsAccess; -class LinuxRasImp : public OsRas, public NEO::NonCopyableClass { +class LinuxRasImp : public OsRas, NEO::NonCopyableOrMovableClass { public: LinuxRasImp(OsSysman *pOsSysman); LinuxRasImp() = default; diff --git a/level_zero/tools/source/sysman/ras/ras_imp.h b/level_zero/tools/source/sysman/ras/ras_imp.h index 57272804bf..e04d07ce30 100644 --- a/level_zero/tools/source/sysman/ras/ras_imp.h +++ b/level_zero/tools/source/sysman/ras/ras_imp.h @@ -14,7 +14,7 @@ namespace L0 { -class RasImp : public NEO::NonCopyableClass, public Ras { +class RasImp : public Ras, NEO::NonCopyableOrMovableClass { public: ze_result_t rasGetProperties(zet_ras_properties_t *pProperties) override; ze_result_t rasGetConfig(zet_ras_config_t *pConfig) override; diff --git a/level_zero/tools/source/sysman/scheduler/linux/os_scheduler_imp.h b/level_zero/tools/source/sysman/scheduler/linux/os_scheduler_imp.h index 5d60a22ad9..69d31fdb67 100644 --- a/level_zero/tools/source/sysman/scheduler/linux/os_scheduler_imp.h +++ b/level_zero/tools/source/sysman/scheduler/linux/os_scheduler_imp.h @@ -17,7 +17,7 @@ class SysfsAccess; // zet_sched_timeslice_properties_t.interval = timeslice_duration_ms // zet_sched_timeslice_properties_t.yieldTimeout = preempt_timeout_ms // zet_sched_timeout_properties_t. watchdogTimeout = heartbeat_interval_ms -class LinuxSchedulerImp : public NEO::NonCopyableClass, public OsScheduler { +class LinuxSchedulerImp : public OsScheduler, NEO::NonCopyableOrMovableClass { public: ze_result_t getPreemptTimeout(uint64_t &timeout, ze_bool_t getDefault) override; ze_result_t getTimesliceDuration(uint64_t ×lice, ze_bool_t getDefault) override; diff --git a/level_zero/tools/source/sysman/scheduler/scheduler_imp.h b/level_zero/tools/source/sysman/scheduler/scheduler_imp.h index affe1ea8ce..28be1922dc 100644 --- a/level_zero/tools/source/sysman/scheduler/scheduler_imp.h +++ b/level_zero/tools/source/sysman/scheduler/scheduler_imp.h @@ -15,7 +15,7 @@ namespace L0 { -class SchedulerImp : public NEO::NonCopyableClass, public Scheduler { +class SchedulerImp : public Scheduler, NEO::NonCopyableOrMovableClass { public: void init() override; ze_result_t getCurrentMode(zet_sched_mode_t *pMode) override; diff --git a/level_zero/tools/source/sysman/standby/linux/os_standby_imp.h b/level_zero/tools/source/sysman/standby/linux/os_standby_imp.h index ffec465167..c8e0d449e4 100644 --- a/level_zero/tools/source/sysman/standby/linux/os_standby_imp.h +++ b/level_zero/tools/source/sysman/standby/linux/os_standby_imp.h @@ -14,7 +14,7 @@ namespace L0 { -class LinuxStandbyImp : public OsStandby, public NEO::NonCopyableClass { +class LinuxStandbyImp : public OsStandby, NEO::NonCopyableOrMovableClass { public: ze_result_t getMode(zet_standby_promo_mode_t &mode) override; ze_result_t setMode(zet_standby_promo_mode_t mode) override; diff --git a/level_zero/tools/source/sysman/standby/standby_imp.h b/level_zero/tools/source/sysman/standby/standby_imp.h index 2a14783b73..4e1785d1f0 100644 --- a/level_zero/tools/source/sysman/standby/standby_imp.h +++ b/level_zero/tools/source/sysman/standby/standby_imp.h @@ -6,6 +6,7 @@ */ #pragma once +#include "shared/source/helpers/non_copyable_or_moveable.h" #include @@ -14,7 +15,7 @@ namespace L0 { -class StandbyImp : public Standby { +class StandbyImp : public Standby, NEO::NonCopyableOrMovableClass { public: ze_result_t standbyGetProperties(zet_standby_properties_t *pProperties) override; ze_result_t standbyGetMode(zet_standby_promo_mode_t *pMode) override; @@ -27,10 +28,6 @@ class StandbyImp : public Standby { void init(); - // Don't allow copies of the StandbyImp object - StandbyImp(const StandbyImp &obj) = delete; - StandbyImp &operator=(const StandbyImp &obj) = delete; - private: zet_standby_properties_t standbyProperties = {}; }; diff --git a/level_zero/tools/source/sysman/sysman_device/linux/os_sysman_device_imp.h b/level_zero/tools/source/sysman/sysman_device/linux/os_sysman_device_imp.h index e7e09d109b..f5781e0fc7 100644 --- a/level_zero/tools/source/sysman/sysman_device/linux/os_sysman_device_imp.h +++ b/level_zero/tools/source/sysman/sysman_device/linux/os_sysman_device_imp.h @@ -13,7 +13,7 @@ namespace L0 { class SysfsAccess; -class LinuxSysmanDeviceImp : public OsSysmanDevice, public NEO::NonCopyableClass { +class LinuxSysmanDeviceImp : public OsSysmanDevice, NEO::NonCopyableOrMovableClass { public: void getSerialNumber(int8_t (&serialNumber)[ZET_STRING_PROPERTY_SIZE]) override; void getBoardNumber(int8_t (&boardNumber)[ZET_STRING_PROPERTY_SIZE]) override; diff --git a/level_zero/tools/source/sysman/sysman_device/sysman_device_imp.h b/level_zero/tools/source/sysman/sysman_device/sysman_device_imp.h index 83d02ab8e5..bc2b654af5 100644 --- a/level_zero/tools/source/sysman/sysman_device/sysman_device_imp.h +++ b/level_zero/tools/source/sysman/sysman_device/sysman_device_imp.h @@ -17,7 +17,7 @@ namespace L0 { -class SysmanDeviceImp : public SysmanDevice, public NEO::NonCopyableClass { +class SysmanDeviceImp : public SysmanDevice, NEO::NonCopyableOrMovableClass { public: void init() override; ze_result_t deviceGetProperties(zet_sysman_properties_t *pProperties) override; diff --git a/level_zero/tools/source/sysman/sysman_device/windows/os_sysman_device_imp.cpp b/level_zero/tools/source/sysman/sysman_device/windows/os_sysman_device_imp.cpp index f88b01732d..bc0923bedc 100644 --- a/level_zero/tools/source/sysman/sysman_device/windows/os_sysman_device_imp.cpp +++ b/level_zero/tools/source/sysman/sysman_device/windows/os_sysman_device_imp.cpp @@ -5,12 +5,15 @@ * */ +#pragma once +#include "shared/source/helpers/non_copyable_or_moveable.h" + #include "level_zero/tools/source/sysman/sysman_device/os_sysman_device.h" #include "level_zero/tools/source/sysman/windows/os_sysman_imp.h" namespace L0 { -class WddmSysmanDeviceImp : public OsSysmanDevice { +class WddmSysmanDeviceImp : public OsSysmanDevice, NEO::NonCopyableOrMovableClass { public: void getSerialNumber(int8_t (&serialNumber)[ZET_STRING_PROPERTY_SIZE]) override; void getBoardNumber(int8_t (&boardNumber)[ZET_STRING_PROPERTY_SIZE]) override; @@ -23,10 +26,6 @@ class WddmSysmanDeviceImp : public OsSysmanDevice { WddmSysmanDeviceImp(OsSysman *pOsSysman); ~WddmSysmanDeviceImp() = default; - - // Don't allow copies of the WddmSysmanDeviceImp object - WddmSysmanDeviceImp(const WddmSysmanDeviceImp &obj) = delete; - WddmSysmanDeviceImp &operator=(const WddmSysmanDeviceImp &obj) = delete; }; void WddmSysmanDeviceImp::getSerialNumber(int8_t (&serialNumber)[ZET_STRING_PROPERTY_SIZE]) { diff --git a/level_zero/tools/source/sysman/sysman_imp.h b/level_zero/tools/source/sysman/sysman_imp.h index 2f73cf5e36..eb60c456d8 100644 --- a/level_zero/tools/source/sysman/sysman_imp.h +++ b/level_zero/tools/source/sysman/sysman_imp.h @@ -6,6 +6,8 @@ */ #pragma once +#include "shared/source/helpers/non_copyable_or_moveable.h" + #include "level_zero/tools/source/sysman/os_sysman.h" #include "level_zero/tools/source/sysman/sysman.h" #include @@ -15,14 +17,12 @@ namespace L0 { -struct SysmanImp : Sysman { +struct SysmanImp : Sysman, NEO::NonCopyableOrMovableClass { SysmanImp(ze_device_handle_t hDevice); ~SysmanImp() override; SysmanImp() = delete; - SysmanImp(const SysmanImp &obj) = delete; - SysmanImp &operator=(const SysmanImp &obj) = delete; void init(); diff --git a/level_zero/tools/source/sysman/temperature/linux/os_temperature_imp.h b/level_zero/tools/source/sysman/temperature/linux/os_temperature_imp.h index e4b1aaff8c..bd7ce404c9 100644 --- a/level_zero/tools/source/sysman/temperature/linux/os_temperature_imp.h +++ b/level_zero/tools/source/sysman/temperature/linux/os_temperature_imp.h @@ -14,7 +14,7 @@ namespace L0 { class SysfsAccess; class PlatformMonitoringTech; -class LinuxTemperatureImp : public OsTemperature, public NEO::NonCopyableClass { +class LinuxTemperatureImp : public OsTemperature, NEO::NonCopyableOrMovableClass { public: ze_result_t getSensorTemperature(double *pTemperature) override; bool isTempModuleSupported() override; diff --git a/level_zero/tools/source/sysman/temperature/temperature_imp.h b/level_zero/tools/source/sysman/temperature/temperature_imp.h index bd3d36e75d..601bc0f20c 100644 --- a/level_zero/tools/source/sysman/temperature/temperature_imp.h +++ b/level_zero/tools/source/sysman/temperature/temperature_imp.h @@ -13,7 +13,7 @@ #include "level_zero/tools/source/sysman/temperature/temperature.h" #include namespace L0 { -class TemperatureImp : public NEO::NonCopyableClass, public Temperature { +class TemperatureImp : public Temperature, NEO::NonCopyableOrMovableClass { public: ze_result_t temperatureGetProperties(zet_temp_properties_t *pProperties) override; ze_result_t temperatureGetConfig(zet_temp_config_t *pConfig) override; diff --git a/level_zero/tools/source/sysman/windows/os_sysman_imp.h b/level_zero/tools/source/sysman/windows/os_sysman_imp.h index 6ab09f7c37..057d191569 100644 --- a/level_zero/tools/source/sysman/windows/os_sysman_imp.h +++ b/level_zero/tools/source/sysman/windows/os_sysman_imp.h @@ -5,19 +5,18 @@ * */ +#pragma once +#include "shared/source/helpers/non_copyable_or_moveable.h" + #include "level_zero/tools/source/sysman/sysman_imp.h" namespace L0 { -class WddmSysmanImp : public OsSysman { +class WddmSysmanImp : public OsSysman, NEO::NonCopyableOrMovableClass { public: WddmSysmanImp(SysmanImp *pParentSysmanImp) : pParentSysmanImp(pParentSysmanImp){}; ~WddmSysmanImp() override = default; - // Don't allow copies of the WddmSysmanImp object - WddmSysmanImp(const WddmSysmanImp &obj) = delete; - WddmSysmanImp &operator=(const WddmSysmanImp &obj) = delete; - ze_result_t init() override; private: