A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
geocentric-ecef-mobility-model.cc
Go to the documentation of this file.
1/*
2 * Copyright (c) 2025
3 *
4 * SPDX-License-Identifier: GPL-2.0-only
5 *
6 * Author: Jesse Chiu <jessest94106@gmail.com>
7 */
8
10
11#include "ns3/log.h"
12
13namespace ns3
14{
15
16NS_LOG_COMPONENT_DEFINE("GeocentricEcefMobilityModel");
17
19
22{
23 static TypeId tid = TypeId("ns3::GeocentricEcefMobilityModel")
25 .SetGroupName("Mobility")
26 .AddConstructor<GeocentricEcefMobilityModel>();
27 return tid;
28}
29
30Vector
32{
33 NS_LOG_FUNCTION(this);
34
35 // Return ECEF coordinates instead of ENU
36 // Use the public GetGeocentricPosition() method which returns ECEF
37 return GetGeocentricPosition();
38}
39
40} // namespace ns3
virtual Vector GetGeocentricPosition() const
Get the position using Geocentric Cartesian coordinates.
GeocentricConstantPositionMobilityModel()=default
Create a position located at coordinates (0,0,0).
Fixed geocentric mobility model whose generic position is ECEF.
static TypeId GetTypeId()
Register this type with the TypeId system.
GeocentricEcefMobilityModel()=default
Create a geocentric ECEF mobility model.
Vector DoGetPosition() const override
Override to return ECEF coordinates instead of ENU.
a unique identifier for an interface.
Definition type-id.h:50
TypeId SetParent(TypeId tid)
Set the parent TypeId.
Definition type-id.cc:999
#define NS_LOG_COMPONENT_DEFINE(name)
Define a Log component with a specific name.
Definition log.h:194
#define NS_LOG_FUNCTION(parameters)
If log level LOG_FUNCTION is enabled, this macro will output all input parameters separated by ",...
#define NS_OBJECT_ENSURE_REGISTERED(type)
Register an Object subclass with the TypeId system.
Definition object-base.h:35
Every class exported by the ns3 library is enclosed in the ns3 namespace.