CreOS SDK
The CreOS SDK allows you to interact with Avular robots
 
Loading...
Searching...
No Matches
power_management_interface.hpp
1// Copyright (C) 2024 Avular Holding B.V. - All Rights Reserved
2// You may use this code under the terms of the Avular
3// Software End-User License Agreement.
4//
5// You should have received a copy of the Avular
6// Software End-User License Agreement license with
7// this file, or download it from: avular.com/eula
8//
9/*****************************************************************************
10 * Created on: 2024 July 23
11 * Author: Bram Tertoolen
12 *
13 * Header file for power management interface
14 ****************************************************************************/
15#pragma once
16
17#include <creos/client_global.hpp>
18#include <creos/messages/enter_low_power_mode.hpp>
19#include <creos/messages/interface_info.hpp>
20#include <creos/robot_clock.hpp>
21
22namespace creos {
23
27class CREOS_CLIENT_API IPowerManagementInterface {
28public:
29 static constexpr char name[] = "power_management";
30 static constexpr unsigned version = 1;
31
32 virtual ~IPowerManagementInterface() = default;
33
45 virtual void enterLowPowerMode(int timeout_ms = 5000) = 0;
46
59 virtual void enterLowPowerMode(const creos::RobotClock::time_point& wake_up_time, int timeout_ms = 5000) = 0;
60
72 virtual void exitLowPowerMode(int timeout_ms = 5000) = 0;
73
85 virtual void shutdown(int timeout_ms = 5000) = 0;
86
99 virtual void reboot(int timeout_ms = 10000) = 0;
100};
101
102} // namespace creos
The interface for querying and managing the power state of an Avular robot.
Definition power_management_interface.hpp:27
virtual void exitLowPowerMode(int timeout_ms=5000)=0
Exit low power mode.
virtual void reboot(int timeout_ms=10000)=0
Reboot the robot.
virtual void enterLowPowerMode(int timeout_ms=5000)=0
Enter low power mode.
virtual void enterLowPowerMode(const creos::RobotClock::time_point &wake_up_time, int timeout_ms=5000)=0
Enter low power mode.
virtual void shutdown(int timeout_ms=5000)=0
Shutdown the robot.
The main namespace for the CreOS client library.