Classes | |
| class | AliasLink |
| An alias for a SimLink. More... | |
| class | BundleEvent |
| Event containing a DTN::Bundle. More... | |
| class | BundleHandler |
| Abstract base class for Entitys that can handle BundleEvents. More... | |
| class | BundleMaker |
| Abstract base class for bundle generation. More... | |
| class | ConsumerAlias |
| An alias to a DTN::Consumer. More... | |
| class | CustodyEntity |
| Base class for Entitys controlling DTN::CustodyPolicys. More... | |
| class | DumpConsumer |
| Data consumer that simply dumps the bundle information to stdout. More... | |
| class | ExplicitRoutingEntity |
| Wrapper for a DTN::ExplicitRoutingTable. More... | |
| class | FlatStore |
| A simple storage class for DTN::Bundles. More... | |
| class | FlatStoreItr |
| Representation of a DTN::BundlePointer as an iterator for FlatStore. More... | |
| class | ForwardingEntity |
| Base class for Entitys controlling DTN::ForwardingPolicys. More... | |
| class | Globals |
| Global configuration. More... | |
| class | GlobalStatistics |
| Singleton subclass of MultiNodeStatistics. More... | |
| class | GStatCollect |
| Simple Event to collect statistical information. More... | |
| class | GStatDump |
| Event handler that dumps global statistical information to a stream. More... | |
| class | GStatEntity |
| Abstract base class for Entitys that can handle Events related to GlobalStatistics. More... | |
| class | GStatForget |
| Simple Event to clear the statistical totals collected. More... | |
| class | GStatTrigger |
| Simple Event to trigger periodic collecting of statistical information. More... | |
| class | HeavyTailBundleMaker |
| Create Bundles sized according to a heavy-tailed distribution. More... | |
| class | HeavyTailTimeDist |
| Heavy-tailed time distribution. More... | |
| class | LinkAvailEvent |
Event to set a SimLink's busy state back to false. More... | |
| class | LinkUpDownEvent |
| Event to change the up/down state of a SimLink. More... | |
| class | Measurement |
| Encapsulation of a measurement as a value and variance/deviation. More... | |
| class | MockBundle |
| Derived type of DTN::Bundle designed for simulating large data sizes. More... | |
| class | MultiNodeStatistics |
| Subclass of Statistics that can aggregate statistics for multiple DTN::Nodes. More... | |
| class | NodeCollector |
| Abstract base class for WrapNode-data collection functional. More... | |
| class | PersistentBundle |
| Internal representation type for a persistent DTN::Bundle. More... | |
| class | PersistentStore |
| A simple persistent store class for DTN::Bundles. More... | |
| class | PersistentStoreItr |
| Representation of a DTN::BundlePointer as an iterator for PersistentStore. More... | |
| class | PoissonTimeDist |
| Poisson time distribution. More... | |
| class | PrefixRoutingEntity |
| Wrapper for a DTN::PrefixRoutingTable. More... | |
| class | PythonBundleMaker |
| Bundle maker for traffic generation that uses a python function. More... | |
| class | PythonTimeDistribution |
| Time distribution for traffic generation that uses a python function. More... | |
| class | ResendEvent |
| Event to trigger resending stored DTN::Bundles. More... | |
| class | RoutingEntity |
| Base class for specific Entitys wrapping DTN::RoutingTables. More... | |
| class | Sequencer |
| Sequence number tracker. More... | |
| class | SimLink |
| A DTN::Link in the simulator. More... | |
| class | SpaceAvailEntity |
| Class for Entitys wrapping DTN::SpaceAvailCustody. More... | |
| class | Stat |
| Simple statistical accumulator. More... | |
| class | UniqueStat |
| Stats that distinguish between unique and duplicate DTN::Bundles. More... | |
| class | StatCollection |
| A collection of Stats. More... | |
| class | Statistics |
| DTN::Consumer for collecting statistical information on a simulated DTN. More... | |
| class | TimeDistribution |
| Abstract base class for time distributions. More... | |
| class | TraceConsumer |
| A special DTN::Consumer that calls the GlobalTracer's hooks. More... | |
| class | Tracer |
| Base class for trace generators. More... | |
| class | TracerChain |
| Tracer that passes objects to a series of other Tracers. More... | |
| class | GlobalTracer |
| A singleton TracerChain. More... | |
| class | TrafficGenerator |
| Generic traffic generator class. More... | |
| class | TrafficTrigger |
| Trigger event for traffic generation. More... | |
| class | UniformBundleMaker |
| Create Bundles of a fixed size. More... | |
| class | UniformTimeDist |
| Uniform time distribution. More... | |
| class | WrapLink |
| Entity to provide access to a Link through the simulator. More... | |
| class | WrapNode |
| Entity to provide access to a DTN::Node through the simulator. More... | |
Defines | |
| #define | PyMODINIT_FUNC extern "C" void |
| Newer versions of Python define this, so that linkage and type are handled transparently. | |
Functions | |
| std::ostream & | operator<< (std::ostream &stream, const Measurement &m) |
| Overloaded stream output. | |
| WrapNode * | parse_node (InterpreterItem o) |
| Given an interpreter reference, return the corresponding node. | |
| WrapLink * | parse_link (InterpreterItem o) |
| Given an interpreter reference, return the corresponding link. | |
| std::string | stringify (const DTN::ByteString &s) |
| Convert a byte string into a printable string. | |
| static PyObject * | PydtnAppObject_new (PyTypeObject *type, PyObject *args, PyObject *kwds) |
| Create a new application object. | |
| static void | PydtnAppObject_dealloc (PydtnAppObject *self) |
| Free the memory used by the application. | |
| static PyObject * | PydtnAppObject_repr (PyObject *self) |
| Python string representation of the application. | |
| static PyObject * | PydtnAppObject_appID (PydtnAppObject *self) |
| The unique identifier for this application. | |
| static PyObject * | PydtnAppObject_process (PydtnAppObject *self, PyObject *args) |
| Process a bundle as if it were received over the network. | |
| void | addType_PydtnAppObject (PyObject *m) |
| Add PydtnAppObject to the given module. | |
| int | PydtnAppObject_Check (PyObject *o) |
| Test whether an object is of type PydtnAppObject. | |
| static PyObject * | create_PydtnBundle (DTN::Bundle *b) |
| Constructor for a PydtnBundle. | |
| static PyObject * | PydtnBundle_new (PyTypeObject *type, PyObject *args, PyObject *kwds) |
| Python constructor for PydtnBundle. | |
| static void | PydtnBundle_dealloc (PydtnBundle *self) |
| Destructor for PydtnBundle. | |
| static PyObject * | PydtnBundle_repr (PyObject *self) |
| String representation of a PydtnBundle. | |
| static PyObject * | PydtnBundle_size (PydtnBundle *self) |
| Get the total size of a bundle. | |
| static PyObject * | PydtnBundle_seqNum (PydtnBundle *self) |
| Get the bundle's sequence number. | |
| static PyObject * | PydtnBundle_source (PydtnBundle *self) |
| Get the source address of the bundle. | |
| static PyObject * | PydtnBundle_destination (PydtnBundle *self) |
| Get the destination address of the bundle. | |
| static PyObject * | PydtnBundle_custodian (PydtnBundle *self) |
| Get the custodian address of the bundle. | |
| static PyObject * | PydtnBundle_send (PydtnBundle *self) |
| Get the last-hop sender address of the bundle. | |
| static PyObject * | PydtnBundle_recv (PydtnBundle *self) |
| Get the last-hop receiver address of the bundle. | |
| static PyObject * | PydtnBundle_payload (PydtnBundle *self) |
| Get the data payload of the bundle. | |
| static PyObject * | PydtnBundle_created (PydtnBundle *self) |
| Get the time at which the bundle was created. | |
| static PyObject * | PydtnBundle_expiry (PydtnBundle *self) |
| Get the time at which the bundle expires. | |
| static PyObject * | PydtnBundle_app (PydtnBundle *self) |
| Get the application identifier for the bundle. | |
| static PyObject * | PydtnBundle_hopCount (PydtnBundle *self) |
| Get the number of hops the bundle has taken through the network. | |
| static PyObject * | PydtnBundle_expired (PydtnBundle *self) |
| Has this bundle expired? | |
| static PyObject * | PydtnBundle_isData (PydtnBundle *self) |
| Is this a data bundle? | |
| static PyObject * | PydtnBundle_isACK (PydtnBundle *self) |
| Is this an acknowledgment bundle? | |
| static PyObject * | PydtnBundle_isNoACK (PydtnBundle *self) |
| Do we refrain from acknowledging this bundle? | |
| static PyObject * | PydtnBundle_isCustodial (PydtnBundle *self) |
| Does this bundle request custody transfer? | |
| static PyObject * | PydtnBundle_isBcast (PydtnBundle *self) |
| Is this a broadcast bundle? | |
| void | addType_PydtnBundle (PyObject *m) |
| Add PydtnBundle to the given module. | |
| PyObject * | PydtnBundle_wrapBundle (const DTN::Bundle &b) |
| Create a PydtnBundle from an existing DTN::Bundle. | |
| int | PydtnBundle_Check (PyObject *o) |
| Test whether an object is of type PydtnBundle. | |
| static PyObject * | dtn_config (PyObject *self, PyObject *args) |
| Configure global parameters. | |
| static PyObject * | dtn_trace (PyObject *self, PyObject *args) |
| Enable tracing. | |
| static PyObject * | dtn_stats (PyObject *self, PyObject *args) |
| Set up global statistics collection. | |
| void | pydtn_statdump () |
| End-of-simulation statistics printing. | |
| void | init_pydtn (void) |
| Initialize the module. | |
| PydtnApplication::PydtnApplication (PydtnAppObject *pyapp, PyObject *pyappID) | |
| Constructor. | |
| virtual | PydtnApplication::~PydtnApplication () |
| Virtual destructor. | |
| PyObject * | PydtnApplication::pyid () |
| The application identifier as a python object. | |
| void | PydtnApplication::process (const DTN::Bundle &b) |
| Call the application on a received Bundle. | |
Variables | |
| static char | PydtnAppObject_doc [] |
| Python documentation string for the Application class. | |
| static PyMethodDef | PydtnAppObject_methods [] |
| A struct defining the object method calls for PydtnAppObject. | |
| static PyMemberDef | PydtnAppObject_members [] |
| A struct defining the members of PydtnAppObject visible in Python through pydtn.Application. | |
| static PyTypeObject | PydtnAppObjectType |
| A struct defining PydtnAppObject as pydtn.Application in Python, and the mappings between the standard Python object methods and our implementations. | |
| static char | PydtnBundle_doc [] |
| Python documentation string for the Bundle class. | |
| static PyMethodDef | PydtnBundle_methods [] |
| A struct defining the object method calls for PydtnBundle. | |
| static PyMemberDef | PydtnBundle_members [] |
| A struct defining the members of PydtnBundle visible in Python through pydtn.Bundle. | |
| static PyTypeObject | PydtnBundleType |
| A struct defining PydtnBundle as pydtn.Bundle in Python, and the mappings between the standard Python object methods and our implementations. | |
| static GStatDump * | gsd = 0 |
| Statistics-dumping Consumer. | |
| static char | dtn_config_doc [] |
| Python docstring for dtn_config(). | |
| static char | dtn_trace_doc [] |
| Python docstring for dtn_trace(). | |
| static char | dtn_stats_doc [] |
| Python docstring for dtn_stats(). | |
| static PyMethodDef | ExampleMethods [] |
| A struct defining the mappings between Python function calls and their implementations. | |
| #define PyMODINIT_FUNC extern "C" void |
Newer versions of Python define this, so that linkage and type are handled transparently.
We only define it if not already defined.
Definition at line 60 of file python_init.cc.
| std::ostream& operator<< | ( | std::ostream & | stream, | |
| const Measurement & | m | |||
| ) |
Overloaded stream output.
Output is of the form a+-b.
| stream | The output stream | |
| m | The measurement to print |
Definition at line 125 of file Measurement.cc.
References Measurement::deviation(), and Measurement::value().
| WrapNode* parse_node | ( | InterpreterItem | o | ) |
Given an interpreter reference, return the corresponding node.
| o | An interpreter reference |
Definition at line 42 of file parsers.cc.
References ItemWrapper::item, resolve_symbol(), and ItemWrapper::type.
Referenced by aodv_attach(), WrapLink::configure(), ExplicitRoutingEntity::configure(), WrapNode::emit(), PydtnAppObject_new(), PydtnBundle_new(), sampleapp_attach(), sampleapp_send(), and storeprofile_collect().
| WrapLink* parse_link | ( | InterpreterItem | o | ) |
Given an interpreter reference, return the corresponding link.
| o | An interpreter reference |
Definition at line 59 of file parsers.cc.
References ItemWrapper::item, resolve_symbol(), and ItemWrapper::type.
Referenced by PrefixRoutingEntity::configure(), and ExplicitRoutingEntity::configure().
| std::string stringify | ( | const DTN::ByteString & | s | ) |
Convert a byte string into a printable string.
If the input string contains only printable characters, the output is the ASCII representation. Otherwise, the output is a string of octal bytes.
| s | A byte string |
Definition at line 76 of file parsers.cc.
Referenced by Epidemic::EpidemicApp::newNeighbor(), BasicEpidemic::EpidemicApp::newNeighbor(), Epidemic::EpidemicApp::process(), BasicEpidemic::EpidemicApp::process(), PydtnBundle_app(), PydtnBundle_custodian(), PydtnBundle_destination(), PydtnBundle_payload(), PydtnBundle_recv(), PydtnBundle_repr(), PydtnBundle_send(), and PydtnBundle_source().
| static PyObject * PydtnAppObject_new | ( | PyTypeObject * | type, | |
| PyObject * | args, | |||
| PyObject * | kwds | |||
| ) | [static] |
Create a new application object.
| type | The type of object to create, in this case PydtnAppObjectType | |
| args | The constructor arguments: a tuple <node,identifier,callable> | |
| kwds | Keyword arguments (not used) |
Definition at line 243 of file PydtnApplication.cc.
References WrapNode::addApplication(), build_arglist(), clean_arglist(), and parse_node().
| static void PydtnAppObject_dealloc | ( | PydtnAppObject * | self | ) | [static] |
Free the memory used by the application.
| self | An application object |
Definition at line 51 of file PydtnApplication.cc.
| static PyObject* PydtnAppObject_repr | ( | PyObject * | self | ) | [static] |
Python string representation of the application.
| self | The application |
Definition at line 64 of file PydtnApplication.cc.
References construct_string().
| static PyObject* PydtnAppObject_appID | ( | PydtnAppObject * | self | ) | [static] |
The unique identifier for this application.
| self | The application |
Definition at line 73 of file PydtnApplication.cc.
| static PyObject* PydtnAppObject_process | ( | PydtnAppObject * | self, | |
| PyObject * | args | |||
| ) | [static] |
Process a bundle as if it were received over the network.
This is designed to look like an object method, even though it uses a callable object. That is, the object must expect to be called with "self" as the first argument.
| self | The application object | |
| args | The argument list, which should be a tuple containing a pydtn.Bundle (PydtnBundle) |
Definition at line 91 of file PydtnApplication.cc.
| void addType_PydtnAppObject | ( | PyObject * | m | ) |
Add PydtnAppObject to the given module.
| m | The module, which should be pydtn. |
Definition at line 303 of file PydtnApplication.cc.
Referenced by init_pydtn().
| int PydtnAppObject_Check | ( | PyObject * | o | ) |
Test whether an object is of type PydtnAppObject.
| o | An object |
o is of type PydtnAppObject Definition at line 312 of file PydtnApplication.cc.
| static PyObject * create_PydtnBundle | ( | DTN::Bundle * | b | ) | [static] |
Constructor for a PydtnBundle.
Since we have two ways to create a PydtnBundle, both ultimately call this method. The bundle passed in should be a clone of the bundle that will be passed in C++.
| b | A bundle to make available (takes ownership) |
Definition at line 531 of file PydtnBundle.cc.
Referenced by PydtnBundle_new(), and PydtnBundle_wrapBundle().
| static PyObject* PydtnBundle_new | ( | PyTypeObject * | type, | |
| PyObject * | args, | |||
| PyObject * | kwds | |||
| ) | [static] |
Python constructor for PydtnBundle.
The arguments (in python) are:
src -- the source nodedest -- the destination nodedata -- a string containing the bundle's payloadlifetime -- the lifetime (in any parseable-as-time format) for the bundleapp -- the application identifierisData -- true if the bundle contains data (default true)isACK -- true if the bundle is an acknowledgment (default false)isNoACK -- true if the bundle should not be acknowledged (default false)isBcast -- true if this is a broadcast bundle (default false)isCustodial -- true if custody transfer should be attempted (default true) | type | The type of object to create (not used) | |
| args | A tuple of constructor arguments (keywords preferred) | |
| kwds | The constructor arguments as keyword/value pairs |
Definition at line 68 of file PydtnBundle.cc.
References WrapNode::addr(), WrapNode::bundleLifetime(), create_PydtnBundle(), DTN::Bundle::kACK, DTN::Bundle::kBcast, DTN::Bundle::kCustodial, DTN::Bundle::kData, DTN::Bundle::kNoACK, DTN::Node::nextSeq(), WrapNode::node(), parse_node(), parse_time(), Clock::time(), and Time::tv.
| static void PydtnBundle_dealloc | ( | PydtnBundle * | self | ) | [static] |
Destructor for PydtnBundle.
| self | The object to destroy |
Definition at line 166 of file PydtnBundle.cc.
| static PyObject* PydtnBundle_repr | ( | PyObject * | self | ) | [static] |
String representation of a PydtnBundle.
| self | The bundle object |
Definition at line 176 of file PydtnBundle.cc.
References DTN::Bundle::app(), construct_string(), DTN::Bundle::created(), DTN::Bundle::custodian(), DTN::Bundle::destination(), DTN::Bundle::expired(), DTN::Bundle::expiry(), DTN::Bundle::hopCount(), DTN::Bundle::kACK, DTN::Bundle::kBcast, DTN::Bundle::kCustodial, DTN::Bundle::kData, DTN::Bundle::kNoACK, DTN::Bundle::payload(), DTN::Bundle::recv(), DTN::Bundle::send(), DTN::Bundle::seqNum(), DTN::Bundle::size(), DTN::Bundle::source(), stringify(), and DTN::Bundle::type().
| static PyObject* PydtnBundle_size | ( | PydtnBundle * | self | ) | [static] |
Get the total size of a bundle.
| self | The bundle object |
Definition at line 213 of file PydtnBundle.cc.
References construct_ulong().
| static PyObject* PydtnBundle_seqNum | ( | PydtnBundle * | self | ) | [static] |
Get the bundle's sequence number.
| self | The bundle object |
Definition at line 224 of file PydtnBundle.cc.
References construct_ulong().
| static PyObject* PydtnBundle_source | ( | PydtnBundle * | self | ) | [static] |
Get the source address of the bundle.
| self | The bundle object |
Definition at line 235 of file PydtnBundle.cc.
References construct_string(), and stringify().
| static PyObject* PydtnBundle_destination | ( | PydtnBundle * | self | ) | [static] |
Get the destination address of the bundle.
| self | The bundle object |
Definition at line 246 of file PydtnBundle.cc.
References construct_string(), and stringify().
| static PyObject* PydtnBundle_custodian | ( | PydtnBundle * | self | ) | [static] |
Get the custodian address of the bundle.
| self | The bundle object |
Definition at line 257 of file PydtnBundle.cc.
References construct_string(), and stringify().
| static PyObject* PydtnBundle_send | ( | PydtnBundle * | self | ) | [static] |
Get the last-hop sender address of the bundle.
| self | The bundle object |
Definition at line 268 of file PydtnBundle.cc.
References construct_string(), and stringify().
| static PyObject* PydtnBundle_recv | ( | PydtnBundle * | self | ) | [static] |
Get the last-hop receiver address of the bundle.
| self | The bundle object |
Definition at line 279 of file PydtnBundle.cc.
References construct_string(), and stringify().
| static PyObject* PydtnBundle_payload | ( | PydtnBundle * | self | ) | [static] |
Get the data payload of the bundle.
| self | The bundle object |
Definition at line 290 of file PydtnBundle.cc.
References construct_string(), and stringify().
| static PyObject* PydtnBundle_created | ( | PydtnBundle * | self | ) | [static] |
Get the time at which the bundle was created.
| self | The bundle object |
Definition at line 301 of file PydtnBundle.cc.
References construct_time().
| static PyObject* PydtnBundle_expiry | ( | PydtnBundle * | self | ) | [static] |
Get the time at which the bundle expires.
| self | The bundle object |
Definition at line 312 of file PydtnBundle.cc.
References construct_time().
| static PyObject* PydtnBundle_app | ( | PydtnBundle * | self | ) | [static] |
Get the application identifier for the bundle.
| self | The bundle object |
Definition at line 323 of file PydtnBundle.cc.
References construct_string(), and stringify().
| static PyObject* PydtnBundle_hopCount | ( | PydtnBundle * | self | ) | [static] |
Get the number of hops the bundle has taken through the network.
| self | The bundle object |
Definition at line 334 of file PydtnBundle.cc.
References construct_ulong().
| static PyObject* PydtnBundle_expired | ( | PydtnBundle * | self | ) | [static] |
Has this bundle expired?
| self | The bundle object |
Definition at line 345 of file PydtnBundle.cc.
References construct_boolean().
| static PyObject* PydtnBundle_isData | ( | PydtnBundle * | self | ) | [static] |
Is this a data bundle?
| self | The bundle object |
Definition at line 356 of file PydtnBundle.cc.
References construct_boolean(), and DTN::Bundle::kData.
| static PyObject* PydtnBundle_isACK | ( | PydtnBundle * | self | ) | [static] |
Is this an acknowledgment bundle?
| self | The bundle object |
Definition at line 367 of file PydtnBundle.cc.
References construct_boolean(), and DTN::Bundle::kACK.
| static PyObject* PydtnBundle_isNoACK | ( | PydtnBundle * | self | ) | [static] |
Do we refrain from acknowledging this bundle?
| self | The bundle object |
Definition at line 378 of file PydtnBundle.cc.
References construct_boolean(), and DTN::Bundle::kNoACK.
| static PyObject* PydtnBundle_isCustodial | ( | PydtnBundle * | self | ) | [static] |
Does this bundle request custody transfer?
| self | The bundle object |
Definition at line 389 of file PydtnBundle.cc.
References construct_boolean(), and DTN::Bundle::kCustodial.
| static PyObject* PydtnBundle_isBcast | ( | PydtnBundle * | self | ) | [static] |
Is this a broadcast bundle?
| self | The bundle object |
Definition at line 400 of file PydtnBundle.cc.
References construct_boolean(), and DTN::Bundle::kBcast.
| void addType_PydtnBundle | ( | PyObject * | m | ) |
Add PydtnBundle to the given module.
| m | The module, which should be pydtn. |
Definition at line 551 of file PydtnBundle.cc.
Referenced by init_pydtn().
| PyObject* PydtnBundle_wrapBundle | ( | const DTN::Bundle & | b | ) |
Create a PydtnBundle from an existing DTN::Bundle.
For memory management purposes, we copy the bundle, which makes this somewhat heavy-weight.
| b | The bundle to wrap |
Definition at line 560 of file PydtnBundle.cc.
References DTN::Bundle::clone(), and create_PydtnBundle().
Referenced by PydtnApplication::process().
| int PydtnBundle_Check | ( | PyObject * | o | ) |
Test whether an object is of type PydtnBundle.
| o | An object |
o is of type PydtnBundle Definition at line 566 of file PydtnBundle.cc.
Referenced by WrapNode::emit().
| static PyObject* dtn_config | ( | PyObject * | self, | |
| PyObject * | args | |||
| ) | [static] |
Configure global parameters.
This is called in Python as pydtn.config(args).
| self | Not used, required by Python | |
| args | A tuple of Python objects that should contain arguments as described by dtn_config_doc. |
Definition at line 106 of file python_init.cc.
References build_arglist(), clean_arglist(), parse_double(), parse_string(), parse_time(), Globals::setBandwidth(), Globals::setBundleLifetime(), Globals::setLatency(), Globals::setPersistentCap(), Globals::setResendPeriod(), and Globals::setVolatileCap().
| static PyObject* dtn_trace | ( | PyObject * | self, | |
| PyObject * | args | |||
| ) | [static] |
Enable tracing.
This is called in Python as pydtn.trace(). In general, this shouldn't be needed, as an individual tracing module should be able to initialize global tracing.
| self | Not used, required by Python | |
| args | Not used, required by Python |
Definition at line 201 of file python_init.cc.
References GlobalTracer::enable().
| static PyObject* dtn_stats | ( | PyObject * | self, | |
| PyObject * | args | |||
| ) | [static] |
Set up global statistics collection.
This is called in Python as pydtn.stats(fname,period).
| self | Not used, required by Python | |
| args | A tuple of Python objects; see dtn_stats_doc for the format |
Definition at line 241 of file python_init.cc.
References GlobalStatistics::enable(), GlobalStatistics::instance(), Clock::schedule(), and Clock::time().
| PyObject * PydtnApplication::pyid | ( | ) | [inherited] |
The application identifier as a python object.
Definition at line 359 of file PydtnApplication.cc.
PyMethodDef PydtnAppObject_methods[] [static] |
Initial value:
{
{ "appID", (PyCFunction)PydtnAppObject_appID, METH_NOARGS,
"returns the application identifier" },
{ "process", (PyCFunction)PydtnAppObject_process, METH_VARARGS,
"process a pydtn.Bundle as if it were received over the network" },
{0}
}
Definition at line 174 of file PydtnApplication.cc.
PyMemberDef PydtnAppObject_members[] [static] |
Initial value:
{
{ "node", T_OBJECT_EX, offsetof(PydtnAppObject, node), READONLY,
"the owner node" },
{0}
}
Definition at line 185 of file PydtnApplication.cc.
PyTypeObject PydtnAppObjectType [static] |
A struct defining PydtnAppObject as pydtn.Application in Python, and the mappings between the standard Python object methods and our implementations.
Definition at line 195 of file PydtnApplication.cc.
char PydtnBundle_doc[] [static] |
Initial value:
"Python-accessible version of a bundle.\n\ \n\ This is a non-modifiable version of a bundle. Bundles may be\n\ created by the backend and passed to python, or they may be\n\ created in python with the following syntax:\n\ \n\ b = pydtn.Bundle( **kwargs )\n\ \n\ where **kwargs includes the following (defaults in brackets):\n\ \n\ src = <source node>\n\ dest = <destination node>\n\ data = <payload data string> [\"\"]\n\ lifetime = <bundle lifetime> [src.get('bundle_lifetime')]\n\ app = <application identifier [\"\"]\n\ isData = <boolean> [True]\n\ isACK = <boolean> [False]\n\ isNoACK = <boolean> [False]\n\ isBcast = <boolean> [False]\n\ isCustodial = <boolean> [True]\n\ \n"
Definition at line 408 of file PydtnBundle.cc.
PyMemberDef PydtnBundle_members[] [static] |
Initial value:
{
{0}
}
Definition at line 474 of file PydtnBundle.cc.
PyTypeObject PydtnBundleType [static] |
A struct defining PydtnBundle as pydtn.Bundle in Python, and the mappings between the standard Python object methods and our implementations.
Definition at line 482 of file PydtnBundle.cc.
char dtn_config_doc[] [static] |
Initial value:
"Global DTN parameter configuration.\n\ \n\ Valid configurations are:\n\ \n\ pydtn.config('capacity',<size>)\n\ Set the default volatile storage capacity to <size>.\n\ (real-valued, in kibibytes)\n\ \n\ pydtn.config('stable_store',<size>)\n\ Set the default persistent storage capacity to <size>.\n\ (real-valued, in kibibytes)\n\ \n\ pydtn.config('bandwidth',<bw>)\n\ Set the default link bandwidth to <bw>.\n\ (real-valued, in Mbps).\n\ \n\ pydtn.config('latency',<t>)\n\ Set the default link latency to <t>, given as [s,us]\n\ (seconds, microseconds).\n\ \n\ pydtn.config('bundle_lifetime',<t>)\n\ Set the default bundle lifetime to <t>, given as [s,us]\n\ (seconds, microseconds).\n\ \n\ pydtn.config('resend_period',<t>)\n\ Set the default bundle resending period to <t>, given as [s,us]\n\ (seconds, microseconds).\n"
This provides detailed documentation on calling pydtn.config() from within simlpy.
Definition at line 69 of file python_init.cc.
char dtn_trace_doc[] [static] |
Initial value:
"Enable global tracing.\n\ \n\ This function takes no arguments.\n\ \n\ In general, this shouldn't be needed, as an individual tracing\n\ module should be able to initialize global tracing.\n"
This provides detailed documentation on calling pydtn.trace() from within simlpy.
Definition at line 183 of file python_init.cc.
char dtn_stats_doc[] [static] |
Initial value:
"Enable global statistics aggregation.\n\ \n\ Statistics aggregation is done as bundles move through the system.\n\ Information is periodically displayed summarizing data collected\n\ since the last dump and data collected since the beginning of the\n\ simulation.\n\ \n\ In addition, at the end of the simulation a final summary will be\n\ displayed.\n\ \n\ Syntax:\n\ \n\ pydtn.stats(<fname>,<period>)\n\ The parameter <fname> is the name of the file into which the\n\ data should be dumped, or 'stdout' or 'stderr'.\n\ \n\ The parameter <period> is the delay (in microseconds) between\n\ collections, and is optional. The default value is 10000 (10ms).\n\ Alternately, a period of 0 will inhibit periodic statistical\n\ dumps, and only the end-of-simulation display will occur.\n"
This provides detailed documentation on calling pydtn.stats() from within simlpy.
Definition at line 211 of file python_init.cc.
PyMethodDef ExampleMethods[] [static] |
Initial value:
{
{"config",dtn_config,METH_VARARGS,dtn_config_doc},
{"trace",dtn_trace,METH_VARARGS,dtn_trace_doc},
{"stats",dtn_stats,METH_VARARGS,dtn_stats_doc},
{0,0,0,0}
}
Definition at line 294 of file python_init.cc.
1.5.4