blob: 1b29010f732971f8e1eedf5c2e9ce22e6deef2cb [file] [log] [blame]
// Copyright 2023 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef LIBEC_CHARGE_CURRENT_LIMIT_SET_COMMAND_H_
#define LIBEC_CHARGE_CURRENT_LIMIT_SET_COMMAND_H_
#include <brillo/brillo_export.h>
#include "libec/ec_command.h"
namespace ec {
class BRILLO_EXPORT ChargeCurrentLimitSetCommand
: public EcCommand<struct ec_params_current_limit, EmptyParam> {
public:
// Request the EC apply a maximum charge limit, measured in milliamps.
// A value of UINT32_MAX indicates "no limit".
explicit ChargeCurrentLimitSetCommand(uint32_t limit_mA);
~ChargeCurrentLimitSetCommand() override = default;
};
static_assert(!std::is_copy_constructible<ChargeCurrentLimitSetCommand>::value,
"EcCommands are not copyable by default");
static_assert(!std::is_copy_assignable<ChargeCurrentLimitSetCommand>::value,
"EcCommands are not copy-assignable by default");
} // namespace ec
#endif // LIBEC_CHARGE_CURRENT_LIMIT_SET_COMMAND_H_