Main MRPT website > C++ reference for MRPT 1.9.9
List of all members | Public Member Functions | Static Public Member Functions | Public Attributes
mrpt::kinematics::CVehicleVelCmd_Holo Class Reference

Detailed Description

Kinematic model for.

Definition at line 21 of file CVehicleVelCmd_Holo.h.

#include <mrpt/kinematics/CVehicleVelCmd_Holo.h>

Inheritance diagram for mrpt::kinematics::CVehicleVelCmd_Holo:
Inheritance graph

Public Member Functions

voidoperator new (size_t size)
 
voidoperator new[] (size_t size)
 
void operator delete (void *ptr) noexcept
 
void operator delete[] (void *ptr) noexcept
 
void operator delete (void *memory, void *ptr) noexcept
 
voidoperator new (size_t size, const std::nothrow_t &) noexcept
 
void operator delete (void *ptr, const std::nothrow_t &) noexcept
 
 CVehicleVelCmd_Holo ()
 
 CVehicleVelCmd_Holo (double vel, double dir_local, double ramp_time, double rot_speed)
 
virtual ~CVehicleVelCmd_Holo ()
 
size_t getVelCmdLength () const override
 Get number of components in each velocity command. More...
 
std::string getVelCmdDescription (const int index) const override
 Get textual, human-readable description of each velocity command component. More...
 
double getVelCmdElement (const int index) const override
 Get each velocity command component. More...
 
void setVelCmdElement (const int index, const double val) override
 Set each velocity command component. More...
 
bool isStopCmd () const override
 Returns true if the command means "do not move" / "stop". More...
 
void setToStop () override
 Set to a command that means "do not move" / "stop". More...
 
void cmdVel_scale (double vel_scale) override
 Scale the velocity command encoded in this object. More...
 
double cmdVel_limits (const mrpt::kinematics::CVehicleVelCmd &prev_vel_cmd, const double beta, const TVelCmdParams &params) override
 Updates this command, computing a blended version of beta (within [0,1]) of vel_cmd and 1-beta of prev_vel_cmd, simultaneously to honoring any user-side maximum velocities. More...
 
std::string asString () const
 Returns a human readable description of the cmd. More...
 
virtual mxArraywriteToMatlab () const
 Introduces a pure virtual method responsible for writing to a mxArray Matlab object, typically a MATLAB struct whose contents are documented in each derived class. More...
 
RTTI classes and functions
mrpt::utils::CObject::Ptr duplicateGetSmartPtr () const
 Returns a copy of the object, indepently of its class, as a smart pointer (the newly created object will exist as long as any copy of this smart pointer). More...
 

Static Public Member Functions

static voidoperator new (size_t size, void *ptr)
 

Public Attributes

double vel
 speed(m / s) More...
 
double dir_local
 : direction, relative to the current robot heading (radians). More...
 
double ramp_time
 : Blending time between current and target time. More...
 
double rot_speed
 : (rad/s) rotational speed for rotating such as the robot slowly faces forward. More...
 

Protected Member Functions

CSerializable virtual methods
void writeToStream (mrpt::utils::CStream &out, int *getVersion) const override
 Introduces a pure virtual method responsible for writing to a CStream. More...
 
void readFromStream (mrpt::utils::CStream &in, int version) override
 Introduces a pure virtual method responsible for loading from a CStream This can not be used directly be users, instead use "stream >> object;" for reading it from a stream or "stream >> object_ptr;" if the class is unknown apriori. More...
 

RTTI stuff

using Ptr = std::shared_ptr< CVehicleVelCmd_Holo >
 
using ConstPtr = std::shared_ptr< const CVehicleVelCmd_Holo >
 
static mrpt::utils::CLASSINIT _init_CVehicleVelCmd_Holo
 
static const mrpt::utils::TRuntimeClassId runtimeClassId
 
static constexpr const char * className = "CVehicleVelCmd_Holo"
 
static const mrpt::utils::TRuntimeClassId_GetBaseClass ()
 
static const mrpt::utils::TRuntimeClassIdGetRuntimeClassIdStatic ()
 
static mrpt::utils::CObjectCreateObject ()
 
template<typename... Args>
static Ptr Create (Args &&... args)
 
virtual const mrpt::utils::TRuntimeClassIdGetRuntimeClass () const override
 Returns information about the class of an object in runtime. More...
 
virtual mrpt::utils::CObjectclone () const override
 Returns a deep copy (clone) of the object, indepently of its class. More...
 

Member Typedef Documentation

◆ ConstPtr

Definition at line 23 of file CVehicleVelCmd_Holo.h.

◆ Ptr

A typedef for the associated smart pointer

Definition at line 23 of file CVehicleVelCmd_Holo.h.

Constructor & Destructor Documentation

◆ CVehicleVelCmd_Holo() [1/2]

CVehicleVelCmd_Holo::CVehicleVelCmd_Holo ( )

Definition at line 19 of file CVehicleVelCmd_Holo.cpp.

◆ CVehicleVelCmd_Holo() [2/2]

CVehicleVelCmd_Holo::CVehicleVelCmd_Holo ( double  vel,
double  dir_local,
double  ramp_time,
double  rot_speed 
)

Definition at line 24 of file CVehicleVelCmd_Holo.cpp.

◆ ~CVehicleVelCmd_Holo()

CVehicleVelCmd_Holo::~CVehicleVelCmd_Holo ( )
virtual

Definition at line 30 of file CVehicleVelCmd_Holo.cpp.

Member Function Documentation

◆ _GetBaseClass()

static const mrpt::utils::TRuntimeClassId* mrpt::kinematics::CVehicleVelCmd_Holo::_GetBaseClass ( )
staticprotected

◆ asString()

std::string mrpt::kinematics::CVehicleVelCmd::asString ( ) const
inherited

Returns a human readable description of the cmd.

Definition at line 22 of file CVehicleVelCmd.cpp.

References mrpt::mrpt::format().

Here is the call graph for this function:

◆ clone()

virtual mrpt::utils::CObject* mrpt::kinematics::CVehicleVelCmd_Holo::clone ( ) const
overridevirtual

Returns a deep copy (clone) of the object, indepently of its class.

Implements mrpt::utils::CObject.

◆ cmdVel_limits()

double CVehicleVelCmd_Holo::cmdVel_limits ( const mrpt::kinematics::CVehicleVelCmd prev_vel_cmd,
const double  beta,
const TVelCmdParams params 
)
overridevirtual

Updates this command, computing a blended version of beta (within [0,1]) of vel_cmd and 1-beta of prev_vel_cmd, simultaneously to honoring any user-side maximum velocities.

Returns
The [0,1] ratio that the cmdvel had to be scaled down, or 1.0 if none.

Implements mrpt::kinematics::CVehicleVelCmd.

Definition at line 136 of file CVehicleVelCmd_Holo.cpp.

References ASSERTMSG_, rot_speed, and vel.

◆ cmdVel_scale()

void CVehicleVelCmd_Holo::cmdVel_scale ( double  vel_scale)
overridevirtual

Scale the velocity command encoded in this object.

Parameters
[in]vel_scaleA scale within [0,1] reflecting how much should be the raw velocity command be lessen (e.g. for safety reasons,...).
[out]out_vel_cmdUsers can directly inherit from existing implementations instead of manually redefining this method:

Implements mrpt::kinematics::CVehicleVelCmd.

Definition at line 127 of file CVehicleVelCmd_Holo.cpp.

References vel.

◆ Create()

template<typename... Args>
static Ptr mrpt::kinematics::CVehicleVelCmd_Holo::Create ( Args &&...  args)
inlinestatic

Definition at line 23 of file CVehicleVelCmd_Holo.h.

◆ CreateObject()

static mrpt::utils::CObject* mrpt::kinematics::CVehicleVelCmd_Holo::CreateObject ( )
static

◆ GetRuntimeClass()

virtual const mrpt::utils::TRuntimeClassId* mrpt::kinematics::CVehicleVelCmd_Holo::GetRuntimeClass ( ) const
overridevirtual

Returns information about the class of an object in runtime.

Reimplemented from mrpt::kinematics::CVehicleVelCmd.

◆ GetRuntimeClassIdStatic()

static const mrpt::utils::TRuntimeClassId& mrpt::kinematics::CVehicleVelCmd_Holo::GetRuntimeClassIdStatic ( )
static

◆ getVelCmdDescription()

std::string CVehicleVelCmd_Holo::getVelCmdDescription ( const int  index) const
overridevirtual

Get textual, human-readable description of each velocity command component.

Implements mrpt::kinematics::CVehicleVelCmd.

Definition at line 32 of file CVehicleVelCmd_Holo.cpp.

References THROW_EXCEPTION_FMT.

◆ getVelCmdElement()

double CVehicleVelCmd_Holo::getVelCmdElement ( const int  index) const
overridevirtual

Get each velocity command component.

Implements mrpt::kinematics::CVehicleVelCmd.

Definition at line 53 of file CVehicleVelCmd_Holo.cpp.

References dir_local, ramp_time, rot_speed, THROW_EXCEPTION_FMT, and vel.

◆ getVelCmdLength()

size_t CVehicleVelCmd_Holo::getVelCmdLength ( ) const
overridevirtual

Get number of components in each velocity command.

Implements mrpt::kinematics::CVehicleVelCmd.

Definition at line 31 of file CVehicleVelCmd_Holo.cpp.

◆ isStopCmd()

bool CVehicleVelCmd_Holo::isStopCmd ( ) const
overridevirtual

Returns true if the command means "do not move" / "stop".

See also
setToStop

Implements mrpt::kinematics::CVehicleVelCmd.

Definition at line 95 of file CVehicleVelCmd_Holo.cpp.

References rot_speed, and vel.

◆ operator delete() [1/3]

void mrpt::kinematics::CVehicleVelCmd_Holo::operator delete ( void ptr)
inlinenoexcept

Definition at line 23 of file CVehicleVelCmd_Holo.h.

◆ operator delete() [2/3]

void mrpt::kinematics::CVehicleVelCmd_Holo::operator delete ( void memory,
void ptr 
)
inlinenoexcept

Definition at line 23 of file CVehicleVelCmd_Holo.h.

◆ operator delete() [3/3]

void mrpt::kinematics::CVehicleVelCmd_Holo::operator delete ( void ptr,
const std::nothrow_t &   
)
inlinenoexcept

Definition at line 23 of file CVehicleVelCmd_Holo.h.

◆ operator delete[]()

void mrpt::kinematics::CVehicleVelCmd_Holo::operator delete[] ( void ptr)
inlinenoexcept

Definition at line 23 of file CVehicleVelCmd_Holo.h.

◆ operator new() [1/3]

void* mrpt::kinematics::CVehicleVelCmd_Holo::operator new ( size_t  size,
const std::nothrow_t &   
)
inlinenoexcept

Definition at line 23 of file CVehicleVelCmd_Holo.h.

◆ operator new() [2/3]

static void* mrpt::kinematics::CVehicleVelCmd_Holo::operator new ( size_t  size,
void ptr 
)
inlinestatic

Definition at line 23 of file CVehicleVelCmd_Holo.h.

◆ operator new() [3/3]

void* mrpt::kinematics::CVehicleVelCmd_Holo::operator new ( size_t  size)
inline

Definition at line 23 of file CVehicleVelCmd_Holo.h.

◆ operator new[]()

void* mrpt::kinematics::CVehicleVelCmd_Holo::operator new[] ( size_t  size)
inline

Definition at line 23 of file CVehicleVelCmd_Holo.h.

◆ readFromStream()

void CVehicleVelCmd_Holo::readFromStream ( mrpt::utils::CStream in,
int  version 
)
overrideprotectedvirtual

Introduces a pure virtual method responsible for loading from a CStream This can not be used directly be users, instead use "stream >> object;" for reading it from a stream or "stream >> object_ptr;" if the class is unknown apriori.

Parameters
inThe input binary stream where the object data must read from.
versionThe version of the object stored in the stream: use this version number in your code to know how to read the incoming data.
Exceptions
std::exceptionOn any error, see CStream::ReadBuffer
See also
CStream

Implements mrpt::utils::CSerializable.

Definition at line 104 of file CVehicleVelCmd_Holo.cpp.

References dir_local, MRPT_THROW_UNKNOWN_SERIALIZATION_VERSION, ramp_time, rot_speed, and vel.

◆ setToStop()

void CVehicleVelCmd_Holo::setToStop ( )
overridevirtual

Set to a command that means "do not move" / "stop".

See also
isStopCmd

Implements mrpt::kinematics::CVehicleVelCmd.

Definition at line 100 of file CVehicleVelCmd_Holo.cpp.

References dir_local, ramp_time, rot_speed, and vel.

◆ setVelCmdElement()

void CVehicleVelCmd_Holo::setVelCmdElement ( const int  index,
const double  val 
)
overridevirtual

Set each velocity command component.

Implements mrpt::kinematics::CVehicleVelCmd.

Definition at line 74 of file CVehicleVelCmd_Holo.cpp.

References dir_local, ramp_time, rot_speed, THROW_EXCEPTION_FMT, val, and vel.

◆ writeToMatlab()

virtual mxArray* mrpt::utils::CSerializable::writeToMatlab ( ) const
inlinevirtualinherited

Introduces a pure virtual method responsible for writing to a mxArray Matlab object, typically a MATLAB struct whose contents are documented in each derived class.

Returns
A new mxArray (caller is responsible of memory freeing) or nullptr is class does not support conversion to MATLAB.

Definition at line 89 of file CSerializable.h.

◆ writeToStream()

void CVehicleVelCmd_Holo::writeToStream ( mrpt::utils::CStream out,
int *  getVersion 
) const
overrideprotectedvirtual

Introduces a pure virtual method responsible for writing to a CStream.

This can not be used directly be users, instead use "stream << object;" for writing it to a stream.

Parameters
outThe output binary stream where object must be dumped.
getVersionIf nullptr, the object must be dumped. If not, only the version of the object dump must be returned in this pointer. This enables the versioning of objects dumping and backward compatibility with previously stored data.
Exceptions
std::exceptionOn any error, see CStream::WriteBuffer
See also
CStream

Implements mrpt::utils::CSerializable.

Definition at line 116 of file CVehicleVelCmd_Holo.cpp.

References dir_local, ramp_time, rot_speed, and vel.

Member Data Documentation

◆ _init_CVehicleVelCmd_Holo

mrpt::utils::CLASSINIT mrpt::kinematics::CVehicleVelCmd_Holo::_init_CVehicleVelCmd_Holo
staticprotected

Definition at line 23 of file CVehicleVelCmd_Holo.h.

◆ className

constexpr const char* mrpt::kinematics::CVehicleVelCmd_Holo::className = "CVehicleVelCmd_Holo"
static

Definition at line 23 of file CVehicleVelCmd_Holo.h.

◆ dir_local

double mrpt::kinematics::CVehicleVelCmd_Holo::dir_local

: direction, relative to the current robot heading (radians).

0 means forward.

Definition at line 29 of file CVehicleVelCmd_Holo.h.

Referenced by mrpt::nav::CPTG_Holo_Blend::directionToMotionCommand(), getVelCmdElement(), readFromStream(), mrpt::kinematics::CVehicleSimul_Holo::sendVelCmd(), setToStop(), setVelCmdElement(), and writeToStream().

◆ ramp_time

double mrpt::kinematics::CVehicleVelCmd_Holo::ramp_time

◆ rot_speed

double mrpt::kinematics::CVehicleVelCmd_Holo::rot_speed

◆ runtimeClassId

const mrpt::utils::TRuntimeClassId mrpt::kinematics::CVehicleVelCmd_Holo::runtimeClassId
staticprotected

Definition at line 23 of file CVehicleVelCmd_Holo.h.

◆ vel

double mrpt::kinematics::CVehicleVelCmd_Holo::vel



Page generated by Doxygen 1.8.14 for MRPT 1.9.9 Git: ae4571287 Thu Nov 23 00:06:53 2017 +0100 at dom oct 27 23:51:55 CET 2019