winIDEA SDK
|
This contains utility functions and typedefs for C++ containers used in isystem.connect.
Containers are mapped to other language in a way to make their usage as close to destination language as possible. For example, StrStrMap wrapper class in Python supports overloaded operators, iterators, and easy conversion between C++ and Python objects. For example:
m = {'a': 'r', 'b': 'q'} sm = isystem.connect.StrStrMap(m) # Python mapping to StrStrMap. m2 = dict(sm) # m2 is Python mapping sm['x'] = 'y' # overloaded []
#include "BB_CRT/AddressDefs.h"
#include "isys_common/isys_expression.h"
#include <string>
#include <vector>
#include <map>
#include <set>
Enumerations | |
enum | iconnect::ETristate |
This enum is used for boolean values, which may be defined as false or true, or are not defined in which case the default value is used. | |
Functions | |
void | iconnect::putStrStrMap (StrStrMap &container, const std::string &key, const std::string &value) |
std::string | iconnect::getModuleVersion () |
This function returns version of current isystem.connect module in format: {<major> . More... | |
void | iconnect::requires_SDK (const uint8_t nMajor, const uint8_t nMinor, const uint16_t nBuild, uint16_t nSubBuild=0xFFFF, uint32_t nSccBuild=0xFFFFFFFF) |
Checks if current version is older than specified in parameters and throws exception if that is the case. More... | |
int | iconnect::readChar () |
Reads a single character from stdin, if available. More... | |
std::string | iconnect::getUID () |
Returns string unique for this process. More... | |
isys::Ssymbol_FQN | iconnect::parse_qualified_name (const std::string &svFQN) |
This function parses fully qualified name of a symbol and returns its components in a struct. More... | |
std::string | iconnect::create_qualified_name (const isys::Ssymbol_FQN &fqn, uint16_t format_flags=isys::Ssymbol_FQN::eFull) |
This function creates a string with qualified symbol name from components given in the input struct. More... | |
std::string iconnect::create_qualified_name | ( | const isys::Ssymbol_FQN & | fqn, |
uint16_t | format_flags = isys::Ssymbol_FQN::eFull |
||
) |
This function creates a string with qualified symbol name from components given in the input struct.
std::string iconnect::getModuleVersion | ( | ) |
This function returns version of current isystem.connect module in format: {<major>
.
<minor>.<build>.<sub_build>}, for example '9.12.184.0'. Use this function if you want to print version only, otherwise usage of getSdkVersion() is preferred.
std::string iconnect::getUID | ( | ) |
Returns string unique for this process.
This function is not reentrant. The string may contain numbers and letters.
isys::Ssymbol_FQN iconnect::parse_qualified_name | ( | const std::string & | svFQN | ) |
This function parses fully qualified name of a symbol and returns its components in a struct.
Symbols in an application can have many qualifiers to be uniquely identifiable, but not all of them are always necessary. Additionally this function supports parsing of modifiers, which are used only for presentation of symbol value.
Symbol name is composed of:
<file name>#<function>##<instance>###<namespace><naked><signature>
The following terms are also used:
<qualified name>,,<partition>,,,<process>
<fully qualified name>,<modifier>
void iconnect::putStrStrMap | ( | StrStrMap & | container, |
const std::string & | key, | ||
const std::string & | value | ||
) |
Utility method for adding (key, value) pairs to StrStrMap. Intended to be used from Python and Java code.
int iconnect::readChar | ( | ) |
Reads a single character from stdin, if available.
If the character is not available, 0 is returned.
void iconnect::requires_SDK | ( | const uint8_t | nMajor, |
const uint8_t | nMinor, | ||
const uint16_t | nBuild, | ||
uint16_t | nSubBuild = 0xFFFF , |
||
uint32_t | nSccBuild = 0xFFFFFFFF |
||
) |
Checks if current version is older than specified in parameters and throws exception if that is the case.
nMajor | major version number |
nMinor | minor version number |
nBuild | build number |
nSubBuild | sub-build number, optional |
nSccBuild | source control revision number, optional |