/** \file
 *
 *  Specifies the interface details for the Sonardyne_Nano component in the
 *  SensorModule.
 *
 *  Sonardyne_Nano.h should only be included by Sonardyne_Nano.cpp
 *  Other classes should include Sonardyne_NanoIF.h
 *
 *  Copyright (c) 2007,2008,2009 MBARI
 *  MBARI Proprietary Information.  All Rights Reserved
 */

#ifndef SONARDYNE_NANOIF_H_
#define SONARDYNE_NANOIF_H_

#include "data/ElementURI.h"

/**
 *  Specifies the interface details for the Sonardyne Nano component in the
 *  SensorModule.
 *
 *  Sonardyne_Nano.h should only be included by Sonardyne_Nano.cpp
 *  Other classes should include Sonardyne_NanoIF.h
 *
 *  \ingroup modules_sensor
 */
namespace Sonardyne_NanoIF
{
/// Static const for component name
/// (Can be used by other components)
static const Str NAME( "Sonardyne_Nano" );

// Include common ConfigURIs -- must be in namespace and follow definition of NAME
#include "component/HasLoadAtStartupIF.h"
#include "component/HasHardwareIF.h"
#include "component/HasLoadControlIF.h"
#include "component/HasPowerIF.h"
#include "component/HasUartIF.h"

static const ConfigURI CHARGE_MIN_CFG( NAME, "chargeMin", Units::PERCENT );
static const ConfigURI CHARGE_MAX_CFG( NAME, "chargeMax", Units::PERCENT );

static const DataURI CHARGE_PERCENT( NAME, "chargePercent", Units::PERCENT );

}

#endif /*SONARDYNE_NANOIF_H_*/
