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

#ifndef TURNER_CYCLOPS_RHODAMINEIF_H_
#define TURNER_CYCLOPS_RHODAMINEIF_H_

#include "data/ElementURI.h"

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

// 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/HasAnalogToDigitalIF.h"
#include "component/HasAnalogToDigitalTimeoutIF.h"


static const ConfigURI CON_STD_CFG( NAME, "concentrationStandard", Units::PART_PER_BILLION );
static const ConfigURI VOLT_STD_CFG( NAME, "voltageStandard", Units::VOLT );
static const ConfigURI VOLT_BLANK_CFG( NAME, "voltageBlank", Units::VOLT );
static const ConfigURI MAX_BOUND_CFG( NAME, "maxBound", Units::MICROMOLE_PER_SECOND_PER_SQUARE_METER );
static const ConfigURI MIN_BOUND_CFG( NAME, "minBound", Units::MICROMOLE_PER_SECOND_PER_SQUARE_METER );
static const ConfigURI SCALE_CFG( NAME, "scale", Units::MILLIVOLT );   // per count of A/D"
static const ConfigURI SERIAL_CFG( NAME, "serial", Units::NONE );

static const DataURI ADC_COUNT( NAME, "adcCount", Units::COUNT );
static const DataURI VOLTAGE( NAME, "voltage", Units::MILLIVOLT );

}

#endif
