// -*- IDL -*-
/*!
 * @file Ranger.idl
 * @brief Services for the Ranger interface.
 * @date $Date: $
 * @author Geoffrey Biggs <geoffrey.biggs@aist.go.jp>
 *
 * Copyright (C) 2009
 *     RT Synthesis Research Group
 *     Intelligent Systems Research Institute,
 *     National Institute of
 *         Advanced Industrial Science and Technology (AIST), Japan
 *     All rights reserved.
 *
 */

#ifndef Ranger_idl
#define Ranger_idl

#include "ExtendedDataTypes.idl"
#include "InterfaceDataTypes.idl"

module RTC {
interface Ranger
{
    /// Get the geometry of the device.
    RangerGeometry GetGeometry ();

    /// Turn the ranger device's power on or off.
    void Power (in boolean enable);

    /// Turn on or off the detection and transmission of intensity data.
    void EnableIntensities (in boolean enable);

    /// Get the ranger's current configuration.
    RangerConfig GetConfig ();

    /// Set the ranger's configuration.
    void SetConfig (in RangerConfig newConfig);
};
};

#endif // Ranger_idl

