From 2a335d968a29c150af31bbad01f02ec9ac444f1f Mon Sep 17 00:00:00 2001 From: "Peter D. Barnes, Jr" Date: Mon, 7 Oct 2024 09:26:50 -1000 Subject: [PATCH] energy: allow use of deprecated LiIonEnergySource in example and test --- .../examples/li-ion-energy-source-example.cc | 12 ++++++++++++ src/energy/model/li-ion-energy-source.h | 13 ++++++++----- src/energy/test/li-ion-energy-source-test.cc | 15 +++++++++++++++ 3 files changed, 35 insertions(+), 5 deletions(-) diff --git a/src/energy/examples/li-ion-energy-source-example.cc b/src/energy/examples/li-ion-energy-source-example.cc index d708954a3..e02d4fdad 100644 --- a/src/energy/examples/li-ion-energy-source-example.cc +++ b/src/energy/examples/li-ion-energy-source-example.cc @@ -34,9 +34,19 @@ using namespace ns3::energy; * http://www.panasonic.com/industrial/includes/pdf/Panasonic_LiIon_CGR18650DA.pdf */ +// NS_DEPRECATED_3_43() - tag for future removal +// LiIonEnergySource was deprecated in commit +// https://gitlab.com/nsnam/ns-3-dev/-/commit/086913b0 +// +// The new battery model is illustrated in +// `src/energy/examples/generic-battery-discharge-example.cc` + +NS_WARNING_PUSH_DEPRECATED; + static void PrintCellInfo(Ptr es) { + NS_WARNING_POP; std::cout << "At " << Simulator::Now().As(Time::S) << " Cell voltage: " << es->GetSupplyVoltage() << " V Remaining Capacity: " << es->GetRemainingEnergy() / (3.6 * 3600) << " Ah" @@ -61,7 +71,9 @@ main(int argc, char** argv) Ptr sem = CreateObject(); Ptr esCont = CreateObject(); + NS_WARNING_PUSH_DEPRECATED; Ptr es = CreateObject(); + NS_WARNING_POP; esCont->Add(es); es->SetNode(node); sem->SetEnergySource(es); diff --git a/src/energy/model/li-ion-energy-source.h b/src/energy/model/li-ion-energy-source.h index f1433b376..36b7ec79b 100644 --- a/src/energy/model/li-ion-energy-source.h +++ b/src/energy/model/li-ion-energy-source.h @@ -25,9 +25,6 @@ namespace energy * \ingroup energy * \brief Model a generic Lithium Ion Battery basing on [1][2]. * - * \deprecated The LiIonEnergySource was deprecated in ns-3.40 in favor of GenericBatteryModel, and - * will be removed in a future release. - * * The model can be fitted to any type of Li-Ion Battery, simply changing the * model parameters. * The default values are fitted for the Panasonic CGR18650DA Li-Ion Battery [3]. @@ -65,9 +62,15 @@ namespace energy * Generic Battery Model for the Dynamic Simulation of Hybrid Electric Vehicles," Ecole de * Technologie Superieure, Universite du Quebec, 2007 [3] * http://www.panasonic.com/industrial/includes/pdf/Panasonic_LiIon_CGR18650DA.pdf - * + */ -class LiIonEnergySource : public EnergySource +// clang-format off +class +NS_DEPRECATED_3_40("The LiIonEnergySource was deprecated in ns-3.40 " + "in favor of GenericBatteryModel, and will be removed " + "in a future release.") +LiIonEnergySource : public EnergySource +// clang-format on { public: /** diff --git a/src/energy/test/li-ion-energy-source-test.cc b/src/energy/test/li-ion-energy-source-test.cc index d1a026df4..78322ed73 100644 --- a/src/energy/test/li-ion-energy-source-test.cc +++ b/src/energy/test/li-ion-energy-source-test.cc @@ -16,6 +16,18 @@ using namespace ns3; using namespace ns3::energy; +// NS_DEPRECATED_3_43() - tag for future removal +// LiIonEnergySource was deprecated in commit +// https://gitlab.com/nsnam/ns-3-dev/-/commit/086913b0 +// +// The new battery model is illustrated in +// `src/energy/examples/generic-battery-discharge-example.cc` +// +// A GenericBatteryModelTestCase is being developed in MR 2181 +// https://gitlab.com/nsnam/ns-3-dev/-/merge_requests/2181 +// which will be in +// `src/energy/test/generic-battery-model-test.cc` + NS_LOG_COMPONENT_DEFINE("LiIonEnergySourceTestSuite"); /** @@ -50,7 +62,10 @@ LiIonEnergyTestCase::DoRun() m_node = CreateObject(); Ptr sem = CreateObject(); + + NS_WARNING_PUSH_DEPRECATED; Ptr es = CreateObject(); + NS_WARNING_POP; es->SetNode(m_node); sem->SetEnergySource(es);