X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=nepi%2Fresources%2Fns3%2Fclasses%2Fconstant_acceleration_mobility_model.py;fp=nepi%2Fresources%2Fns3%2Fclasses%2Fconstant_acceleration_mobility_model.py;h=c639fc8e3b9ab234b1100f93d44f4b880c5b8ccb;hb=941fd7f54114b824fa26563d389a7ae07426fe14;hp=0000000000000000000000000000000000000000;hpb=7bdd35bc0d846e6ae89bdc8aaa2e919bbac25096;p=nepi.git diff --git a/nepi/resources/ns3/classes/constant_acceleration_mobility_model.py b/nepi/resources/ns3/classes/constant_acceleration_mobility_model.py new file mode 100644 index 00000000..c639fc8e --- /dev/null +++ b/nepi/resources/ns3/classes/constant_acceleration_mobility_model.py @@ -0,0 +1,64 @@ +# +# NEPI, a framework to manage network experiments +# Copyright (C) 2014 INRIA +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License version 2 as +# published by the Free Software Foundation; +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . +# + +from nepi.execution.attribute import Attribute, Flags, Types +from nepi.execution.trace import Trace, TraceAttr +from nepi.execution.resource import ResourceManager, clsinit_copy, \ + ResourceState +from nepi.resources.ns3.ns3mobilitymodel import NS3BaseMobilityModel + +@clsinit_copy +class NS3ConstantAccelerationMobilityModel(NS3BaseMobilityModel): + _rtype = "ns3::ConstantAccelerationMobilityModel" + + @classmethod + def _register_attributes(cls): + + attr_position = Attribute("Position", + "The current position of the mobility model.", + type = Types.String, + default = "0:0:0", + allowed = None, + range = None, + flags = Flags.Reserved) + + cls._register_attribute(attr_position) + + attr_velocity = Attribute("Velocity", + "The current velocity of the mobility model.", + type = Types.String, + default = "0:0:0", + allowed = None, + range = None, + flags = Flags.Reserved | Flags.NoWrite) + + cls._register_attribute(attr_velocity) + + + + @classmethod + def _register_traces(cls): + + coursechange = Trace("CourseChange", "The value of the position and/or velocity vector changed") + + cls._register_trace(coursechange) + + + + def __init__(self, ec, guid): + super(NS3ConstantAccelerationMobilityModel, self).__init__(ec, guid) + self._home = "ns3-constant-acceleration-mobility-model-%s" % self.guid