34 lines
1.1 KiB
C++
34 lines
1.1 KiB
C++
|
|
#pragma once
|
||
|
|
|
||
|
|
#include <cstdint>
|
||
|
|
|
||
|
|
namespace Bloom::DebugToolDrivers::TargetInterfaces
|
||
|
|
{
|
||
|
|
/**
|
||
|
|
* Some debug tools provide target power management functions. Those that do should expose an implementation of
|
||
|
|
* this interface via DebugTool::getTargetPowerManagementInterface();
|
||
|
|
*/
|
||
|
|
class TargetPowerManagementInterface
|
||
|
|
{
|
||
|
|
public:
|
||
|
|
TargetPowerManagementInterface() = default;
|
||
|
|
virtual ~TargetPowerManagementInterface() = default;
|
||
|
|
|
||
|
|
TargetPowerManagementInterface(const TargetPowerManagementInterface& other) = default;
|
||
|
|
TargetPowerManagementInterface(TargetPowerManagementInterface&& other) = default;
|
||
|
|
|
||
|
|
TargetPowerManagementInterface& operator = (const TargetPowerManagementInterface& other) = default;
|
||
|
|
TargetPowerManagementInterface& operator = (TargetPowerManagementInterface&& other) = default;
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Should enable the target power if currently disabled.
|
||
|
|
*/
|
||
|
|
virtual void enableTargetPower() = 0;
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Should disable the target power if currently enabled.
|
||
|
|
*/
|
||
|
|
virtual void disableTargetPower() = 0;
|
||
|
|
};
|
||
|
|
}
|