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

#ifndef BACKSEATDRIVERIF_H_
#define BACKSEATDRIVERIF_H_

#include "data/ElementURI.h"

/**
 *  Specifies the interface details for the BackseatDriver component in the
 *  GuidanceModule.
 *
 *  BackseatDriver.h should only be included by BackseatDriver.cpp
 *  Other classes should include BackseatDriverIF.h
 *
 *  \ingroup modules_guidance
 */
namespace BackseatDriverIF
{
/// Static const for component name
/// (Can be used by other components)
static const Str NAME( "BackseatDriver" );

/// Static consts for input settings
/// (Supplied so outputs can be directed to these inputs)

static const StringSettingURI LCM_CHANNEL_SETTING( "lcm_channel", "LCM channel name to subscribe to (default is 'tethys_slate'" );
static const SettingURI SOURCE_ID_SETTING( "source_id", "When set, restricts message intercept to this source ID", Units::COUNT );
static const SettingURI BACKSEAT_POWER_SETTING( "powerBackseat", "When set, requests backseat power on", Units::BOOL );

}

#endif /*BACKSEATDRIVERIF_H_*/
