Skip to content
Snippets Groups Projects
Commit 3caab182 authored by Nikolaus Vahrenkamp's avatar Nikolaus Vahrenkamp
Browse files

Add DebugDrawer Interface

parent 84c6e50d
No related branches found
No related tags found
No related merge requests found
......@@ -26,6 +26,9 @@ set(SLICE_FILES
units/TCPControlUnit.ice
units/TCPMoverUnitInterface.ice
units/UnitInterface.ice
visualization/DebugDrawerInterface.ice
)
# generate the interface library
......
/*
* This file is part of ArmarX.
*
* ArmarX is free software; you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as
* published by the Free Software Foundation; either version 2 of
* the License, or (at your option) any later version.
*
* ArmarX is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* @package ArmarX::RobotAPI
* @author Nikolaus Vahrenkamp
* @copyright 2014
* @license http://www.gnu.org/licenses/gpl.txt
* GNU General Public License
*/
#ifndef _ARMARX_API_DEBUGDRAWERLAYER_SLICE_
#define _ARMARX_API_DEBUGDRAWERLAYER_SLICE_
#include <Core/interface/core/UserException.ice>
#include <Core/interface/core/BasicTypes.ice>
#include <RobotAPI/interface/robotstate/PoseBase.ice>
module armarx
{
/*!
* \brief A layered drawing interface.
* All drawing operations are identified with a layer name in order to distinguish different drawing entitties.
* The layered approach allows a visualizer GUI to enable/disable different layers according to the requested visualization.
*/
interface DebugDrawerInterface
{
/*!
* \brief Draw or update a coordinate system.
* \param drawLayer A custom name to distinguish different drawing layers.
* \param poseName The internal name of the pose (can be used to update/disable the drawing).
* \param globalPose The pose in global coordinate syetem.
*/
void setPoseLayerVisu(string layerName, string poseName, PoseBase globalPose);
/*!
* \brief setPoseVisu draws on the "debug" layer
* \param poseName
* \param globalPose
*/
void setPoseDebugLayerVisu(string poseName, PoseBase globalPose);
/*!
* \brief Remove visualization of coordinate system.
* \param layerName The name of the drawing layer.
* \param poseName The name of the pose.
*/
void removePoseLayerVisu(string layerName, string poseName);
/*!
* \brief Removes pose from the "debug" layer.
*/
void removePoseDebugLayerVisu(string poseName);
};
};
#endif
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment