Connecting gates. | |
class class class class class class SIM_API void | connect (cModule *frm, int frg, cChannelType *linkp, cModule *tom, int tog) |
SIM_API void | connect (cModule *frm, int frg, cPar *delayp, cPar *errorp, cPar *dataratep, cModule *tom, int tog) |
Miscellaneous functions. | |
SIM_API cPolymorphic * | createOne (const char *classname) |
SIM_API cPolymorphic * | createOneIfClassIsKnown (const char *classname) |
Finding global objects by name. | |
SIM_API cNetworkType * | findNetwork (const char *s) |
SIM_API cModuleType * | findModuleType (const char *s) |
SIM_API cModuleInterface * | findModuleInterface (const char *s) |
SIM_API cChannelType * | findChannelType (const char *s) |
SIM_API cLinkType * | findLink (const char *s) |
SIM_API cFunctionType * | findFunction (const char *s, int argcount) |
SIM_API cEnum * | findEnum (const char *s) |
Converting simulation time to and from string form. | |
SIM_API simtime_t | strToSimtime (const char *str) |
SIM_API simtime_t | strToSimtime0 (const char *&str) |
SIM_API char * | simtimeToStr (simtime_t t, char *dest=NULL) |
SIM_API char * | simtimeToStrShort (simtime_t t, char *buf=NULL) |
Utility functions to support nedtool-compiled expressions. | |
SIM_API double | min (double a, double b) |
SIM_API double | max (double a, double b) |
SIM_API double | bool_and (double a, double b) |
SIM_API double | bool_or (double a, double b) |
SIM_API double | bool_xor (double a, double b) |
SIM_API double | bool_not (double a) |
SIM_API double | bin_and (double a, double b) |
SIM_API double | bin_or (double a, double b) |
SIM_API double | bin_xor (double a, double b) |
SIM_API double | bin_compl (double a) |
SIM_API double | shift_left (double a, double b) |
SIM_API double | shift_right (double a, double b) |
String-related utility functions. | |
Some of these functions are similar to <string.h> functions, with the exception that they also accept NULL pointers as empty strings (""), and use operator new instead of malloc().
It is recommended to use these functions instead of the original <string.h> functions. | |
SIM_API char * | opp_strdup (const char *) |
SIM_API char * | opp_strcpy (char *, const char *) |
SIM_API int | opp_strcmp (const char *, const char *) |
SIM_API bool | opp_strmatch (const char *, const char *) |
SIM_API int | opp_strlen (const char *) |
SIM_API char * | opp_mkindexedname (char *dest, const char *name, int index) |
SIM_API char * | opp_concat (const char *s1, const char *s2, const char *s3=NULL, const char *s4=NULL) |
SIM_API char * | opp_strprettytrunc (char *dest, const char *src, unsigned maxlen) |
const char * | correct (const char *) |
Miscellaneous functions. | |
bool | equal (double a, double b, double epsilon) |
Functions | |
template<class T> | |
T | check_and_cast (cPolymorphic *p) |
|
Returns the binary AND of a and b. (a and b are converted to unsigned long for the operation.) |
|
Returns the bitwise negation (unary complement) of a. (a is converted to unsigned long for the operation.) |
|
Returns the binary OR of a and b. (a and b are converted to unsigned long for the operation.) |
|
Returns the binary exclusive OR of a and b. (a and b are converted to unsigned long for the operation.) |
|
Returns the boolean AND of a and b. (Any nonzero number is treated as true.) |
|
Returns the boolean negation of a. (Any nonzero number is treated as true.) |
|
Returns the boolean OR of a and b. (Any nonzero number is treated as true.) |
|
Returns the boolean Exclusive OR of a and b. (Any nonzero number is treated as true.) |
|
Cast an object pointer to the given C++ type and throw exception if fails. The method calls dynamic_cast<T>(p) where T is a type you supplied; if the result is NULL (which indicates incompatible types), an exception is thrown. In the following example, MyPacket is a subclass of cMessage, and we want to assert that the message received is actually a MyPacket. If not, the simulation stops with an error message as the result of the exception. cMessage *msg = receive(); MyPacket *pkt = check_and_cast<MyPacket *>(msg); |
|
DEPRECATED: use cGate::connectTo() instead. Connects two gates. |
|
DEPRECATED: use cGate::connectTo() instead. Connects two gates. |
|
Returns the pointer passed as argument unchanged, except that if it was NULL, it returns a pointer to a null string ("").
|
|
Creates an instance of a particular class; the result has to be cast to the appropriate type by hand. The class must have been registered previously with the Register_Class() macro. This function internally relies on the cClassRegister class. If the class is not registered, this function throws an exception. If you'd prefer having a NULL pointer returned instead, use the createOneIfClassIsKnown() function. Example:
createOne() is used e.g. in parallel simulation when an object is received from another partition and it has to be demarshalled.
|
|
A variant of the createOne() function; this function doesn't throw an exception if the class is not registered, but returns a NULL pointer instead.
|
|
Tests equality of two doubles, with the given precision.
|
|
Find a cChannelType.
|
|
Find a cEnum.
|
|
Find a cFunctionType.
|
|
DEPRECATED.
|
|
Find a cModuleInterface.
|
|
Find a cModuleType.
|
|
Find a cNetworkType.
|
|
Returns the maximum of a and b.
|
|
Returns the minimum of a and b.
|
|
Concatenates up to four strings. Returns a pointer to a static buffer of length 256. If the result length would exceed 256, it is truncated. |
|
Creates a string like "component[35]" into dest, the first argument.
|
|
Same as the standard strcmp() function, except that NULL pointers are treated like pointers to a null string ("").
|
|
Same as the standard strcpy() function, except that NULL pointers in the second argument are treated like pointers to a null string ("").
|
|
Duplicates the string. If the pointer passed is NULL or points to a null string (""), NULL is returned. |
|
Same as the standard strlen() function, except that does not crash on NULL pointers but returns 0.
|
|
Returns true if the two strings are identical up to the length of the shorter one. NULL pointers are treated like pointers to a null string (""). |
|
Copies src string into desc, and if its length would exceed maxlen, it is truncated with an ellipsis.
For example, |
|
Shifts a b bits to the left. (a and b are converted to unsigned long for the operation.) |
|
Shifts a b bits to the right. (a and b are converted to unsigned long for the operation.) |
|
Converts simulation time (passed as simtime_t) into a string like "0.0120000 (12ms)". If no destination pointer is given, it will use a static buffer. |
|
Converts simulation time (passed as simtime_t) into a short string form like "12.37ms". If no destination pointer is given, it will use a static buffer. |
|
Convert a string to simtime_t. The string should have a format similar to the one output by simtimeToStr() (like "1s 34ms"). Returns -1 if the whole string cannot be interpreted as time. Empty string (or only spaces+tabs) is also an error. E.g. strtoSimtime("3s 600ms x") will return -1. |
|
Convert the beginning of a string to simtime_t. Similar to strToSimtime(), only it processes the string as far as it can be interpreted as simulation time. It sets the pointer passed to the first character which cannot be interpreted as part of the time string, or to the terminating zero. Empty string is accepted as 0.0. Example: strToSimtime0("3s 600ms x") will return 3.6 and the str pointer will point to the character 'x'. |