a wrapper around a posix synchronous application. More...
#include <dce-application.h>
Public Member Functions | |
DceApplication () | |
virtual | ~DceApplication () |
void | SetArguments (std::vector< std::string > args) |
void | SetBinary (std::string filename) |
void | SetEgid (uid_t i) |
void | SetEnvironment (std::vector< std::pair< std::string, std::string > > envs) |
void | SetEuid (uid_t i) |
void | SetFinishedCallback (Callback< void, uint16_t, int > cb) |
void | SetGid (uid_t i) |
void | SetStackSize (uint32_t stackSize) |
void | SetStdinFile (std::string filename) |
void | SetUid (uid_t i) |
Static Public Member Functions | |
static TypeId | GetTypeId (void) |
Private Member Functions | |
virtual void | DoDispose (void) |
virtual void | StartApplication (void) |
virtual void | StopApplication (void) |
Private Attributes | |
std::vector< std::string > | m_args |
TracedCallback< uint16_t > | m_dceStarted |
uid_t | m_egid |
std::vector< std::pair < std::string, std::string > > | m_envs |
uid_t | m_euid |
std::string | m_filename |
Callback< void, uint16_t, int > | m_finishedCallback |
uid_t | m_gid |
uint16_t | m_pid |
uint32_t | m_stackSize |
std::string | m_stdinFilename |
uid_t | m_uid |
a wrapper around a posix synchronous application.
The sole purpose of this class is to allow users to manipulate these posix synchronous applications in their scripts as if they were normal ns-3 applications and to start them at a specific time using the normal ApplicationContainer::Start method.
To implement the Stop method, we send a SIGKILL signal to the target application. Note that doing this will make it impossible to deal correctly with the application's memory management. i.e., once you call Stop on such an application, valgrind will most likely start reporting a lot of lost memory. Crashes might ensue.
Definition at line 23 of file dce-application.h.
ns3::DceApplication::DceApplication | ( | ) |
Definition at line 24 of file dce-application.cc.
|
virtual |
Definition at line 33 of file dce-application.cc.
|
privatevirtual |
Definition at line 38 of file dce-application.cc.
|
static |
Definition at line 13 of file dce-application.cc.
References m_dceStarted.
void ns3::DceApplication::SetArguments | ( | std::vector< std::string > | args | ) |
Definition at line 54 of file dce-application.cc.
References m_args.
void ns3::DceApplication::SetBinary | ( | std::string | filename | ) |
Definition at line 44 of file dce-application.cc.
References m_filename.
void ns3::DceApplication::SetEgid | ( | uid_t | i | ) |
Definition at line 126 of file dce-application.cc.
References m_egid.
void ns3::DceApplication::SetEnvironment | ( | std::vector< std::pair< std::string, std::string > > | envs | ) |
Definition at line 60 of file dce-application.cc.
References m_envs.
void ns3::DceApplication::SetEuid | ( | uid_t | i | ) |
Definition at line 116 of file dce-application.cc.
References m_euid.
void ns3::DceApplication::SetFinishedCallback | ( | Callback< void, uint16_t, int > | cb | ) |
Definition at line 106 of file dce-application.cc.
References m_finishedCallback.
void ns3::DceApplication::SetGid | ( | uid_t | i | ) |
Definition at line 121 of file dce-application.cc.
References m_gid.
void ns3::DceApplication::SetStackSize | ( | uint32_t | stackSize | ) |
Definition at line 49 of file dce-application.cc.
References m_stackSize.
void ns3::DceApplication::SetStdinFile | ( | std::string | filename | ) |
Definition at line 101 of file dce-application.cc.
References m_stdinFilename.
void ns3::DceApplication::SetUid | ( | uid_t | i | ) |
Definition at line 111 of file dce-application.cc.
References m_uid.
|
privatevirtual |
Definition at line 66 of file dce-application.cc.
References m_args, m_dceStarted, m_egid, m_envs, m_euid, m_filename, m_finishedCallback, m_gid, m_pid, m_stackSize, m_stdinFilename, and m_uid.
|
privatevirtual |
Definition at line 93 of file dce-application.cc.
References m_pid, and ns3::DceManager::Stop().
|
private |
Definition at line 50 of file dce-application.h.
Referenced by SetArguments(), and StartApplication().
|
private |
Definition at line 53 of file dce-application.h.
Referenced by GetTypeId(), and StartApplication().
|
private |
Definition at line 59 of file dce-application.h.
Referenced by SetEgid(), and StartApplication().
|
private |
Definition at line 51 of file dce-application.h.
Referenced by SetEnvironment(), and StartApplication().
|
private |
Definition at line 57 of file dce-application.h.
Referenced by SetEuid(), and StartApplication().
|
private |
Definition at line 48 of file dce-application.h.
Referenced by SetBinary(), and StartApplication().
|
private |
Definition at line 55 of file dce-application.h.
Referenced by SetFinishedCallback(), and StartApplication().
|
private |
Definition at line 58 of file dce-application.h.
Referenced by SetGid(), and StartApplication().
|
private |
Definition at line 52 of file dce-application.h.
Referenced by StartApplication(), and StopApplication().
|
private |
Definition at line 49 of file dce-application.h.
Referenced by SetStackSize(), and StartApplication().
|
private |
Definition at line 54 of file dce-application.h.
Referenced by SetStdinFile(), and StartApplication().
|
private |
Definition at line 56 of file dce-application.h.
Referenced by SetUid(), and StartApplication().