YARP
Yet Another Robot Platform
IControlLimits.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2006-2021 Istituto Italiano di Tecnologia (IIT)
3 * SPDX-FileCopyrightText: 2006-2010 RobotCub Consortium
4 * SPDX-License-Identifier: BSD-3-Clause
5 */
6
7#ifndef YARP_DEV_ICONTROLLIMITS_H
8#define YARP_DEV_ICONTROLLIMITS_H
9
10#include <yarp/os/Vocab.h>
11#include <yarp/dev/api.h>
12
15namespace yarp::dev {
16class IControlLimitsRaw;
17class IControlLimits;
18}
19
26{
27public:
31 virtual ~IControlLimits() {}
32
41 virtual bool setLimits(int axis, double min, double max)=0;
42
50 virtual bool getLimits(int axis, double *min, double *max)=0;
51
60 virtual bool setVelLimits(int axis, double min, double max)=0;
61
69 virtual bool getVelLimits(int axis, double *min, double *max)=0;
70};
71
76{
77public:
81 virtual ~IControlLimitsRaw() {}
82
91 virtual bool setLimitsRaw(int axis, double min, double max)=0;
92
100 virtual bool getLimitsRaw(int axis, double *min, double *max)=0;
101
110 virtual bool setVelLimitsRaw(int axis, double min, double max)=0;
111
119 virtual bool getVelLimitsRaw(int axis, double *min, double *max)=0;
120};
121
122// interface IControlLimits sets/gets
125
126#endif // YARP_DEV_ICONTROLLIMITS_H
constexpr yarp::conf::vocab32_t VOCAB_LIMITS
constexpr yarp::conf::vocab32_t VOCAB_VEL_LIMITS
Interface for control devices.
virtual bool setVelLimitsRaw(int axis, double min, double max)=0
Set the software speed limits for a particular axis, the behavior of the control card when these limi...
virtual ~IControlLimitsRaw()
Destructor.
virtual bool getLimitsRaw(int axis, double *min, double *max)=0
Get the software limits for a particular axis.
virtual bool setLimitsRaw(int axis, double min, double max)=0
Set the software limits for a particular axis, the behavior of the control card when these limits are...
virtual bool getVelLimitsRaw(int axis, double *min, double *max)=0
Get the software speed limits for a particular axis.
Interface for control devices, commands to get/set position and veloity limits.
virtual ~IControlLimits()
Destructor.
virtual bool getVelLimits(int axis, double *min, double *max)=0
Get the software speed limits for a particular axis.
virtual bool getLimits(int axis, double *min, double *max)=0
Get the software limits for a particular axis.
virtual bool setLimits(int axis, double min, double max)=0
Set the software limits for a particular axis, the behavior of the control card when these limits are...
virtual bool setVelLimits(int axis, double min, double max)=0
Set the software speed limits for a particular axis, the behavior of the control card when these limi...
std::int32_t vocab32_t
Definition: numeric.h:78
For streams capable of holding different kinds of content, check what they actually have.
constexpr yarp::conf::vocab32_t createVocab32(char a, char b=0, char c=0, char d=0)
Create a vocab from chars.
Definition: Vocab.h:27
The main, catch-all namespace for YARP.
Definition: dirs.h:16
#define YARP_dev_API
Definition: api.h:18