/** \file
 *
 *  Contains the SimBatteryStruct class declaration.
 *
 *  Copyright (c) 2022 MBARI
 *  MBARI Proprietary Information.  All Rights Reserved
 */

#ifndef SIMBATTERYSTRUCT_H_
#define SIMBATTERYSTRUCT_H_

/**
 *  A struct of values that is passed from the Simulator to the LRAUV,
 *  with the results from one BATTERY simulation timestep.
 *
 *  \ingroup modules_simulator
 */
struct SimBatteryStruct
{

    /// Battery voltage
    double batteryVoltage;

    /// Battery voltage
    double batteryCurrent;

    /// Battery voltage
    double batteryCharge;

    /// Percentage of battery remaining
    double batteryPercentage;

    /// Constructor
    SimBatteryStruct()
        : batteryVoltage( nanf( "" ) ),
          batteryCurrent( nanf( "" ) ),
          batteryCharge( nanf( "" ) ),
          batteryPercentage( nanf( "" ) )
    {}
};

#endif /* SIMBATTERYSTRUCT_H_ */
