INET Framework for OMNeT++/OMNEST
inet::IMobility Class Referenceabstract

Abstract base class defining the public interface that must be provided by all mobility modules. More...

#include <IMobility.h>

Inheritance diagram for inet::IMobility:
inet::MobilityBase inet::AttachedMobility inet::FacingMobility inet::MovingMobilityBase inet::RotatingMobilityBase inet::StationaryMobilityBase inet::SuperpositioningMobility inet::CircleMobility inet::LinearMobility inet::LineSegmentsMobilityBase inet::RectangleMobility inet::VehicleMobility inet::LinearRotatingMobilityBase inet::StaticConcentricMobility inet::StaticGridMobility inet::StaticLinearMobility inet::StationaryMobility

Public Member Functions

virtual ~IMobility ()
 
virtual int getId () const =0
 
virtual double getMaxSpeed () const =0
 Returns the maximum possible speed at any future time. More...
 
virtual const CoordgetCurrentPosition ()=0
 Returns the position at the current simulation time. More...
 
virtual const CoordgetCurrentVelocity ()=0
 Returns the velocity at the current simulation time. More...
 
virtual const CoordgetCurrentAcceleration ()=0
 Returns the acceleration at the current simulation time. More...
 
virtual const QuaterniongetCurrentAngularPosition ()=0
 Returns the angular position at the current simulation time. More...
 
virtual const QuaterniongetCurrentAngularVelocity ()=0
 Returns the angular velocity at the current simulation time. More...
 
virtual const QuaterniongetCurrentAngularAcceleration ()=0
 Returns the angular acceleration at the current simulation time. More...
 
virtual const CoordgetConstraintAreaMax () const =0
 Returns the maximum position along each axes for. More...
 
virtual const CoordgetConstraintAreaMin () const =0
 Returns the minimum position along each axes for. More...
 

Static Public Attributes

static simsignal_t mobilityStateChangedSignal = cComponent::registerSignal("mobilityStateChanged")
 A signal used to publish mobility state changes. More...
 

Detailed Description

Abstract base class defining the public interface that must be provided by all mobility modules.

The mobility interface uses a 3D right-handed Euclidean coordinate system.

Coordinates are represented by 3D double precision tuples called Coord. The coordinates are in X, Y, Z order, they are measured in metres. Conceptually, the X axis goes to the right, the Y axis goes forward, the Z axis goes upward.

Orientations are represented by 3D double precision Tait-Bryan (Euler) tuples called EulerAngles. The angles are in Z, Y', X" order that is often called intrinsic rotations, they are measured in radians. The default (unrotated) orientation is along the X axis. Conceptually, the Z axis rotation is heading, the Y' axis rotation is descending, the X" axis rotation is bank. For example, positive rotation along the Z axis rotates X into Y (turns left), positive rotation along the Y axis rotates Z into X (leans forward), positive rotation along the X axis rotates Y into Z (leans right).

Constructor & Destructor Documentation

◆ ~IMobility()

virtual inet::IMobility::~IMobility ( )
inlinevirtual
43 {}

Member Function Documentation

◆ getConstraintAreaMax()

virtual const Coord& inet::IMobility::getConstraintAreaMax ( ) const
pure virtual

Returns the maximum position along each axes for.

Implemented in inet::MobilityBase, and inet::StationaryMobilityBase.

Referenced by inet::physicallayer::MediumLimitCache::computeMaxConstreaintArea().

◆ getConstraintAreaMin()

virtual const Coord& inet::IMobility::getConstraintAreaMin ( ) const
pure virtual

Returns the minimum position along each axes for.

Implemented in inet::MobilityBase, and inet::StationaryMobilityBase.

Referenced by inet::physicallayer::MediumLimitCache::computeMinConstraintArea().

◆ getCurrentAcceleration()

virtual const Coord& inet::IMobility::getCurrentAcceleration ( )
pure virtual

◆ getCurrentAngularAcceleration()

virtual const Quaternion& inet::IMobility::getCurrentAngularAcceleration ( )
pure virtual

◆ getCurrentAngularPosition()

◆ getCurrentAngularVelocity()

virtual const Quaternion& inet::IMobility::getCurrentAngularVelocity ( )
pure virtual

◆ getCurrentPosition()

virtual const Coord& inet::IMobility::getCurrentPosition ( )
pure virtual

Returns the position at the current simulation time.

Implemented in inet::MoBanLocal, inet::MovingMobilityBase, inet::SuperpositioningMobility, inet::AttachedMobility, inet::FacingMobility, and inet::StationaryMobilityBase.

Referenced by inet::physicallayer::GridNeighborCache::addRadio(), inet::physicallayer::QuadTreeNeighborCache::addRadio(), inet::physicallayer::ConstantTimePropagation::computeArrival(), inet::physicallayer::ConstantSpeedPropagation::computeArrival(), inet::physicallayer::ApskScalarTransmitter::createTransmission(), inet::physicallayer::Ieee802154NarrowbandScalarTransmitter::createTransmission(), inet::physicallayer::Ieee80211ScalarTransmitter::createTransmission(), inet::physicallayer::Ieee802154NarrowbandDimensionalTransmitter::createTransmission(), inet::physicallayer::ApskDimensionalTransmitter::createTransmission(), inet::physicallayer::Ieee80211DimensionalTransmitter::createTransmission(), inet::physicallayer::NoiseDimensionalTransmitter::createTransmission(), inet::physicallayer::Ieee80211UnitDiskTransmitter::createTransmission(), inet::physicallayer::UnitDiskTransmitter::createTransmission(), inet::physicallayer::Ieee802154UwbIrTransmitter::createTransmission(), inet::physicallayer::ApskLayeredTransmitter::createTransmission(), inet::physicallayer::Ieee80211LayeredOfdmTransmitter::createTransmission(), inet::physicallayer::GridNeighborCache::fillCubeVector(), inet::physicallayer::Radio::isListeningPossible(), inet::utils::filters::MobilityPosFilter::receiveSignal(), inet::visualizer::RadioCanvasVisualizer::refreshAntennaLobe(), inet::MobilityBase::DirectiveResolver::resolveDirective(), inet::physicallayer::GridNeighborCache::sendToNeighbors(), inet::physicallayer::QuadTreeNeighborCache::sendToNeighbors(), inet::MobilityBase::updateDisplayStringFromMobilityState(), and inet::physicallayer::NeighborListNeighborCache::updateNeighborList().

◆ getCurrentVelocity()

virtual const Coord& inet::IMobility::getCurrentVelocity ( )
pure virtual

◆ getId()

◆ getMaxSpeed()

Member Data Documentation

◆ mobilityStateChangedSignal


The documentation for this class was generated from the following files: