|  | VM2D
    1.12
    Vortex methods for 2D flows simulation | 
| Classes | |
| struct | GeomPoint | 
| class | LogStream | 
| Класс, определяющий работу с потоком логов  More... | |
| class | nummatrix | 
| Шаблонный класс, определяющий матрицу фиксированного размера Фактически представляет собой массив, для которого определено большое количество различных операций. Для доступа к элементам матрицы используется оператор [][] Оператор[] имитирует возврат ссылки/константной ссылки на numvector. More... | |
| class | numvector | 
| Шаблонный класс, определяющий вектор фиксированной длины Фактически представляет собой массив, для которого определено большое количество различных операций. Для доступа к элементам массива используется оператор []. More... | |
| class | PairInt | 
| Класс, опеделяющий пару целых чисел  More... | |
| class | Parallel | 
| Класс, опеделяющий параметры исполнения задачи в параллельном MPI-режиме  More... | |
| struct | parProp | 
| Стрктура, содержащая параметры исполнения задачи в параллельном MPI-режиме  More... | |
| class | PassportGen | 
| Абстрактный класс, опеделяющий паспорт задачи  More... | |
| class | Point2D | 
| Класс, опеделяющий двумерный вектор  More... | |
| class | Preprocessor | 
| Класс, позволяющий выполнять предварительную обработку файлов  More... | |
| class | Queue | 
| Класс, опеделяющий список решаемых задач и очередь их прохождения  More... | |
| class | StreamParser | 
| Класс, позволяющий выполнять разбор файлов и строк с настройками и параметрами  More... | |
| class | Task | 
| Класс, опеделяющий описание каждой задачи в смысле прохождения процесса ее решения  More... | |
| struct | TimeDiscretizationProperties | 
| Структура, задающая параметры процесса интегрирования по времени  More... | |
| class | TimesGen | 
| Класс для сбора статистики времени исполнения основных шагов алгоритма и вывода ее в файл  More... | |
| struct | TParticleCode | 
| class | v3D | 
| Класс, опеделяющий двумерный вектор  More... | |
| class | Vortex2D | 
| Класс, опеделяющий двумерный вихревой элемент  More... | |
| class | WorldGen | 
| Класс, опеделяющий текущую решаемую задачу  More... | |
| Typedefs | |
| typedef Vortex2D | Source2D | 
| Определение типа данных - источника, имеющего ту же структуру, что и вихрь  More... | |
| Enumerations | |
| enum | TaskState { TaskState::waiting = 0, TaskState::starting = 1, TaskState::running = 2, TaskState::finishing = 3, TaskState::done = 4 } | 
| Тип-перечисление, опеделяющий состояние задачи в процессе работы программы  More... | |
| Functions | |
| std::string | CurrentDataTime () | 
| Формирование строки с текущем временем и датой  More... | |
| void | PrintLogoToStream (std::ostream &str) | 
| Передача в поток вывода шапки программы VM2D/VM3D.  More... | |
| void | PrintUniversalLogoToStream (std::ostream &str) | 
| Передача в поток вывода универсальной шапки программы VM2D/VM3D.  More... | |
| void | PrintLogoToTextFile (std::ofstream &str, const std::string &fileName, const std::string &descr) | 
| Формирование заголовка файла программы VM2D/VM3D.  More... | |
| void | PrintHeaderToTextFile (std::ofstream &str, const std::string &header) | 
| Формирование подзаголовка в текстовом файле вывода программы VM2D/VM3D.  More... | |
| template<typename T > | |
| std::ostream & | operator<< (std::ostream &_stream, const std::vector< T > &_vec) | 
| Переопределение оператора "<<" для вывода в поток вектора std::vector.  More... | |
| std::ostream & | operator<< (std::ostream &_stream, const std::pair< std::pair< std::string, int >, std::string > &_pair) | 
| Переопределение оператора "<<" для вывода в поток пары ((строка, целое число), строка)  More... | |
| std::ostream & | operator<< (std::ostream &_stream, const std::pair< std::string, int > &_pair) | 
| Переопределение оператора "<<" для вывода в поток пары (строка, целое число)  More... | |
| bool | fileExistTest (std::string &fileName, LogStream &info, const std::list< std::string > &extList={}) | 
| Проверка существования файла  More... | |
| std::string | fileNameStep (const std::string &name, int length, size_t number, const std::string &ext) | 
| Формирование имени файла  More... | |
| void | copyFile (const std::string &fileNameFrom, const std::string &fileNameTo) | 
| Копирование файла  More... | |
| void | CreateDirectory (const std::string &dir, const std::string &name) | 
| Создание каталога  More... | |
| template<typename T > | |
| T | sqr (T x) | 
| Возведение числа в квадрат  More... | |
| template<typename T > | |
| double | macos (const T x) | 
| Усовершенствованный аркосинус  More... | |
| template<typename T > | |
| int | sign (T x) | 
| Усовершенствованный сигнум  More... | |
| void | SaveToStream (const Eigen::MatrixXd &matr, std::ostream &str) | 
| Сохранение матрицы в поток  More... | |
| void | SaveToStream (const Eigen::MatrixXcd &matr, std::ostream &str) | 
| Сохранение комплекснозначной матрицы в поток  More... | |
| void | SaveToStream (const Eigen::VectorXd &vec, std::ostream &str) | 
| Сохранение вектора в поток  More... | |
| void | SaveToStream (const std::vector< Point2D > &vec, std::ostream &str) | 
| Сохранение списка из двумерных векторов (точек) в поток  More... | |
| double | M4 (double t) | 
| Ядро сглаживания (Монагана)  More... | |
| void | ModifyE2 (double *ee2, double dst2) | 
| Модифицирует массив квадратов расстояний до ближайших вихрей из wake.  More... | |
| double | Alpha (const Point2D &p, const Point2D &s) | 
| Вспомогательная функция вычисления угла между векторами  More... | |
| double | Lambda (const Point2D &p, const Point2D &s) | 
| Вспомогательная функция вычисления логарифма отношения норм векторов  More... | |
| Point2D | Omega (const Point2D &a, const Point2D &b, const Point2D &c) | 
| Вспомогательная функция вычисления величины \( (\vec a \cdot \vec b) \cdot \vec c + (\vec a \times \vec b) \times \vec c \).  More... | |
| template<typename T > | |
| void | SwapEnd (T &var) | 
| Вспомогательная функция перестановки байт местами (нужно для сохранения бинарных VTK)  More... | |
| double | boundDenom (double r2, double eps2) | 
| Способ сглаживания скорости вихря (вихрь Рэнкина или вихрь Ламба)  More... | |
| template<typename T , typename P , size_t n, size_t m> | |
| auto | operator& (const numvector< P, n > &x, const nummatrix< T, n, m > &A) -> numvector< typename std::remove_const< decltype(x[0]*A.data()[0])>::type, m > | 
| Умножение вектора на матрицу  More... | |
| template<typename T , typename P , size_t n, size_t m> | |
| auto | operator| (const numvector< T, n > &x, const numvector< P, m > &y) -> nummatrix< typename std::remove_const< decltype(x[0]*y[0])>::type, n, m > | 
| Умножение вектора на вектор внешним образом  More... | |
| template<typename T , size_t n, size_t m> | |
| std::ostream & | operator<< (std::ostream &str, const nummatrix< T, n, m > &x) | 
| Перегрузка оператора "<<" вывода в поток  More... | |
| template<typename T , size_t n> | |
| numvector< T, n > | operator* (double c, const numvector< T, n > &x) | 
| Оператор "*" умножения вектора на число (число слева, вектор справа)  More... | |
| template<typename T , typename P , size_t n> | |
| auto | operator* (const P c, const numvector< T, n > &x) -> numvector< typename std::remove_const< decltype(x[0]*c)>::type, n > | 
| Оператор "*" умножения вектора на число (число слева, вектор справа)  More... | |
| template<typename T , typename P , typename R > | |
| void | cross (const numvector< T, 3 > &x, const numvector< P, 3 > &y, numvector< R, 3 > &z) | 
| Быстрое вычисление векторного произведения  More... | |
| template<typename T , typename P , size_t n> | |
| auto | dist2 (const numvector< T, n > &x, const numvector< P, n > &y) -> typename std::remove_const< decltype(x[0]-y[0])>::type | 
| Вычисление квадрата расстояния между двумя точками  More... | |
| template<typename R = double, typename T , typename P , size_t n> | |
| R | dist (const numvector< T, n > &x, const numvector< P, n > &y) | 
| Вычисление расстояния между двумя точками  More... | |
| template<typename T , size_t n> | |
| std::ostream & | operator<< (std::ostream &str, const numvector< T, n > &x) | 
| Оператор "<<" вывода вектора в поток  More... | |
| template<typename T , typename P , typename R , typename S , size_t n> | |
| std::pair< numvector< T, n >, numvector< P, n > > & | operator+= (std::pair< numvector< T, n >, numvector< P, n >> &a, const std::pair< numvector< R, n >, numvector< S, n >> &b) | 
| Оператор прибавления "+=" для пар векторов  More... | |
| template<typename T , typename P , typename R , typename S , size_t n> | |
| auto | operator+ (const std::pair< numvector< T, n >, numvector< P, n >> &a, const std::pair< numvector< R, n >, numvector< S, n >> &b) -> std::pair< numvector< typename std::remove_const< decltype(a.first[0]+b.first[0])>::type, n >, numvector< typename std::remove_const< decltype(a.second[0]+b.second[0])>::type, n >> | 
| Оператор сложения "+" для пар векторов  More... | |
| template<typename T , typename P , typename R , size_t n> | |
| std::pair< numvector< T, n >, numvector< P, n > > & | operator*= (std::pair< numvector< T, n >, numvector< P, n >> &a, R c) | 
| Оператор домножения "*=" пары векторов на число (пара слева, число справа)  More... | |
| template<typename T , typename P , typename R , size_t n> | |
| auto | operator* (R c, const std::pair< numvector< T, n >, numvector< P, n >> &a) -> std::pair< numvector< typename std::remove_const< decltype(c *a.first[0])>::type, n >, numvector< typename std::remove_const< decltype(c *a.second[0])>::type, n >> | 
| Оператор умножения "*" числа на пару векторов (число слева, пара справа)  More... | |
| template<typename T , typename P , typename R , size_t n> | |
| auto | operator* (const std::pair< numvector< T, n >, numvector< P, n >> &a, R c) -> std::pair< numvector< typename std::remove_const< decltype(a.first[0]*c)>::type, n >, numvector< typename std::remove_const< decltype(a.second[0]*c)>::type, n >> | 
| Оператор умножения "*" пары векторов на число (пара слева, число справа)  More... | |
| template<typename T , typename P , size_t n> | |
| std::ostream & | operator<< (std::ostream &str, const std::pair< numvector< T, n >, numvector< P, n >> &x) | 
| Оператор "<<" вывода пары векторов в поток  More... | |
| template<typename T , typename P , size_t n> | |
| double | cross3 (const numvector< T, n > &x, const numvector< P, n > &y) | 
| Вычисление третьей компоненты векторного произведения  More... | |
| std::pair< PairInt, PairInt > & | operator+= (std::pair< PairInt, PairInt > &a, const std::pair< PairInt, PairInt > &b) | 
| int | is_match (const std::string &line_, const std::string &pattern_) | 
| Функция сверки строки с шаблоном, который может содержать знаки * и ?  More... | |
| v3D | operator* (double c, const v3D &x) | 
| std::pair< v3D, v3D > & | operator+= (std::pair< v3D, v3D > &a, const std::pair< v3D, v3D > &b) | 
| std::pair< v3D, v3D > & | operator*= (std::pair< v3D, v3D > &a, double c) | 
| std::pair< v3D, v3D > | operator* (std::pair< v3D, v3D > &a, double c) | 
| typedef Vortex2D VMlib::Source2D | 
Определение типа данных - источника, имеющего ту же структуру, что и вихрь
Definition at line 106 of file Vortex2D.h.
| 
 | strong | 
Тип-перечисление, опеделяющий состояние задачи в процессе работы программы
Может принимать 5 различных значений:
| Enumerator | |
|---|---|
| waiting | задача ожидает запуска | 
| starting | задача стартует | 
| running | задача решается | 
| finishing | задача финиширует | 
| done | задача решена | 
Definition at line 59 of file Task.h.
Вспомогательная функция вычисления угла между векторами
| [in] | p | константная ссылка на первый вектор | 
| [in] | s | константная ссылка на второй вектор | 
Definition at line 259 of file defs.cpp.


| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| void VMlib::cross | ( | const numvector< T, 3 > & | x, | 
| const numvector< P, 3 > & | y, | ||
| numvector< R, 3 > & | z | ||
| ) | 
Быстрое вычисление векторного произведения
Определено только для трехмерных векторов 
 Оптимизировано за счет отсутствия вызова конструктора, предполагает наличие трех уже созданных векторов
| T | тип данных компонент вектора первого множителя | 
| P | тип данных компонент вектора второго множителя | 
| R | тип данных компонент вектора результата | 
| [in] | x | константная ссылка на первый множитель | 
| [in] | y | константная ссылка на второй множитель | 
| [out] | z | ссылка на результат векторного умножения | 
Definition at line 772 of file numvector.h.
| double VMlib::cross3 | ( | const numvector< T, n > & | x, | 
| const numvector< P, n > & | y | ||
| ) | 
Вычисление третьей компоненты векторного произведения
Определено для векторов любой размерности, используются только первые 2 компоненты исходных векторов
| T | тип данных компонент вектора - первого множителя | 
| P | тип данных компонент вектора - второго множителя | 
| n | размерность исходных векторов | 
| [in] | x | константная ссылка на первый множитель | 
| [in] | y | константная ссылка на второй множитель | 
Definition at line 1064 of file numvector.h.


| std::string VMlib::CurrentDataTime | ( | ) | 
Формирование строки с текущем временем и датой
Definition at line 44 of file defs.cpp.

| R VMlib::dist | ( | const numvector< T, n > & | x, | 
| const numvector< P, n > & | y | ||
| ) | 
Вычисление расстояния между двумя точками
| T | тип данных компонент радиус-вектора первой точки | 
| P | тип данных компонент радиус-вектора второй точки | 
| R | тип данных результата (по умолчанию double) | 
| [in] | x | константная ссылка на радиус-вектор первой точки | 
| [in] | y | константная ссылка на радиус-вектор второй точки | 
Definition at line 804 of file numvector.h.

| auto VMlib::dist2 | ( | const numvector< T, n > & | x, | 
| const numvector< P, n > & | y | ||
| ) | -> typename std::remove_const<decltype(x[0] - y[0])>::type | 
Вычисление квадрата расстояния между двумя точками
| T | тип данных компонент первого радиус-вектора | 
| P | тип данных компонент второго радиус-вектора | 
| n | размерность векторов | 
| [in] | x | константная ссылка на радиус-вектор первой точки | 
| [in] | y | константная ссылка на радиус-вектор второй точки | 
Definition at line 788 of file numvector.h.


| 
 | inline | 
Проверка существования файла
| [in,out] | fileName | ссылка на имя проверяемого файла, заменяется на имя + то из расширений, с которым файл присутствует | 
| [in,out] | info | ссылка на поток вывода логов/ошибок | 
| [in] | extList | константная ссылка на список проверяемых расширений | 
Definition at line 324 of file defs.h.

| 
 | inline | 
Формирование имени файла
| [in] | name | константная ссылка на префикс имени файла | 
| [in] | length | количество знаков под номер | 
| [in] | number | номер для имени файла | 
| [in] | ext | константная ссылка на раширение (дописывается, если непустое) | 
Definition at line 357 of file defs.h.

| 
 | inline | 
Функция сверки строки с шаблоном, который может содержать знаки * и ?
| [in] | line_ | константная ссылка на проверяемую строку | 
| [in] | pattern_ | константная ссылка на строку-шаблон, с которой производится сверка rerurn признак соответствия строки шаблону | 
Definition at line 57 of file StreamParser.h.

| double VMlib::M4 | ( | double | t | ) | 
| 
 | inline | 
| 
 | inline | 
Вспомогательная функция вычисления величины \( (\vec a \cdot \vec b) \cdot \vec c + (\vec a \times \vec b) \times \vec c \).
Для оптимизации все векторы считаются двумерными
| [in] | a | константная ссылка на первый вектор | 
| [in] | b | константная ссылка на второй вектор | 
| [in] | c | константная ссылка на третий вектор | 
Definition at line 271 of file defs.cpp.


| auto VMlib::operator& | ( | const numvector< P, n > & | x, | 
| const nummatrix< T, n, m > & | A | ||
| ) | -> numvector<typename std::remove_const<decltype(x[0] * A.data()[0])>::type, m> | 
Умножение вектора на матрицу
| T | тип данных матрицы | 
| P | тип данных вектора | 
| n | длина вектора и число строк матрицы | 
| m | число столбцов матрицы | 
| [in] | A | константная ссылка на матрицу | 
| [in] | x | константная ссылка на вектор | 
Definition at line 528 of file nummatrix.h.
| numvector<T, n> VMlib::operator* | ( | double | c, | 
| const numvector< T, n > & | x | ||
| ) | 
Оператор "*" умножения вектора на число (число слева, вектор справа)
| T | тип данных компонент вектора и множителя | 
| n | длина вектора | 
| [in] | c | числовой множитель | 
| [in] | x | константная ссылка на умножаемый вектор | 
Definition at line 732 of file numvector.h.
| auto VMlib::operator* | ( | const P | c, | 
| const numvector< T, n > & | x | ||
| ) | -> numvector<typename std::remove_const<decltype(x[0] * c)>::type, n> | 
Оператор "*" умножения вектора на число (число слева, вектор справа)
| T | тип данных компонент вектора | 
| P | тип данных числового множителя | 
| n | длина вектора | 
| [in] | c | числовой множитель | 
| [in] | x | константная ссылка на умножаемый вектор | 
Definition at line 750 of file numvector.h.
| 
 | inline | 
Оператор умножения "*" числа на пару векторов (число слева, пара справа)
tparam T тип данных вектора - первого компонента в паре tparam P тип данных вектора - второго компонента в паре tparam R тип данных числового множителя tparam n длина векторов - компонентов пары param[in] c числовой множитель param[in] a константная ссылка на пару return пару, получаемую при покомпонентном умножении пары на число, приведенную к нужному типу
Definition at line 905 of file numvector.h.
| 
 | inline | 
Оператор умножения "*" пары векторов на число (пара слева, число справа)
tparam T тип данных вектора - первого компонента в паре tparam P тип данных вектора - второго компонента в паре tparam R тип данных числового множителя tparam n длина векторов - компонентов пары param[in] c числовой множитель param[in] a константная ссылка на пару return пару, получаемую при покомпонентном умножении пары на число, приведенную к нужному типу
Definition at line 925 of file numvector.h.
| 
 | inline | 
Оператор домножения "*=" пары векторов на число (пара слева, число справа)
tparam T тип данных вектора - первого компонента в паре tparam P тип данных вектора - второго компонента в паре tparam R тип данных числового множителя tparam n длина векторов - компонентов пары param[in] a ссылка на пару param[in] c числовой множитель return ссылка на пару после ее покомпонентного домножения на число
Definition at line 887 of file numvector.h.
| 
 | inline | 
Оператор сложения "+" для пар векторов
tparam T тип данных вектора - первого компонента в левой паре tparam P тип данных вектора - второго компонента в левой паре tparam R тип данных вектора - первого компонента в правой паре tparam S тип данных вектора - второго компонента в правой паре tparam n длина векторов - компонентов обеих пар param[in] a константная ссылка на левую пару param[in] b константная ссылка на правую пару return пару, получаемую при покомпонентном суммировании левой и правой пар, приведенную к нужному типу
Definition at line 867 of file numvector.h.
| 
 | inline | 
Оператор прибавления "+=" для пар векторов
tparam T тип данных вектора - первого компонента в паре tparam P тип данных вектора - второго компонента в паре tparam R тип данных вектора - первого компонента в прибавляемой паре tparam S тип данных вектора - второго компонента в прибавляемой паре tparam n длина векторов - компонентов обеих пар param[in] a ссылка на первую пару param[in] b константная ссылка на прибавляемую пару return ссылку на первую пару после прибавления к ней второй пары
Definition at line 848 of file numvector.h.
| std::ostream& VMlib::operator<< | ( | std::ostream & | _stream, | 
| const std::vector< T > & | _vec | ||
| ) | 
Переопределение оператора "<<" для вывода в поток вектора std::vector.
Компоненты вектора выводятся в фигурных скобках с разделителем ";"
| T | тип элементов в векторе | 
| [in,out] | _stream | ссылка на поток для вывода | 
| [in] | _vec | константная ссылка на выводимый вектор | 
| 
 | inline | 
Переопределение оператора "<<" для вывода в поток пары ((строка, целое число), строка)
Компоненты пары выводятся в скобках с разделителем ","
| [in,out] | _stream | ссылка на поток для вывода | 
| [in] | _pair | константная ссылка на выводимую пару | 
| 
 | inline | 
Переопределение оператора "<<" для вывода в поток пары (строка, целое число)
Компоненты пары выводятся в скобках с разделителем ","
| [in,out] | _stream | ссылка на поток для вывода | 
| [in] | _pair | константная ссылка на выводимую пару | 
| std::ostream& VMlib::operator<< | ( | std::ostream & | str, | 
| const nummatrix< T, n, m > & | x | ||
| ) | 
Перегрузка оператора "<<" вывода в поток
Выводит в поток вектор, элементы которого записаны в фигурных скобках и разделены запятой с пробелом
| T | тип данных | 
| n | размерность вектора | 
| [in,out] | str | ссылка на поток вывода | 
| [in] | x | константная ссылка на вектор | 
Definition at line 568 of file nummatrix.h.
| std::ostream& VMlib::operator<< | ( | std::ostream & | str, | 
| const numvector< T, n > & | x | ||
| ) | 
Оператор "<<" вывода вектора в поток
Выводит в поток вектор, элементы которого записываются в фигурных скобках и разделены запятой с пробелом
| T | тип данных компонент вектора | 
| n | размерность вектора | 
| [in,out] | str | ссылка на поток вывода | 
| [in] | x | константная ссылка на вектор | 
Definition at line 821 of file numvector.h.
| std::ostream& VMlib::operator<< | ( | std::ostream & | str, | 
| const std::pair< numvector< T, n >, numvector< P, n >> & | x | ||
| ) | 
Оператор "<<" вывода пары векторов в поток
Выводит в поток векторы из пары, разделяя их запятой с пробелом
| T | тип данных вектора - первого компонента пары | 
| P | тип данных вектора - второго компонента пары | 
| n | размерность векторов | 
| [in,out] | str | ссылка на поток вывода | 
| [in] | x | константная ссылка на вектор | 
Definition at line 943 of file numvector.h.
| 
 | inline | 
Умножение вектора на вектор внешним образом
Definition at line 544 of file nummatrix.h.
| void VMlib::PrintHeaderToTextFile | ( | std::ofstream & | str, | 
| const std::string & | header | ||
| ) | 
Формирование подзаголовка в текстовом файле вывода программы VM2D/VM3D.
Печатает в файл вывода программы VM2D/VM3D подзаголовок и подчеркивает его
| [out] | str | ссылка на файл для вывода, должен быть открыт | 
| [in] | header | константная ссылка на строку с заголовком | 
Definition at line 172 of file defs.cpp.

| void VMlib::PrintLogoToStream | ( | std::ostream & | str | ) | 
| void VMlib::PrintLogoToTextFile | ( | std::ofstream & | str, | 
| const std::string & | fileName, | ||
| const std::string & | descr | ||
| ) | 
Формирование заголовка файла программы VM2D/VM3D.
Печатает в шапку файла заголовок программы VM2D/VM3D
| [out] | str | ссылка на файл для вывода, должен быть открыт | 
| [in] | fileName | константная ссылка на строку с именем файла | 
| [in] | descr | константная ссылка на строку с описанием файла | 
Definition at line 136 of file defs.cpp.


| void VMlib::PrintUniversalLogoToStream | ( | std::ostream & | str | ) | 
| void VMlib::SaveToStream | ( | const Eigen::MatrixXd & | matr, | 
| std::ostream & | str | ||
| ) | 
Сохранение матрицы в поток
| [in] | matr | константная ссылка на сохраняемую матрицу | 
| [in,out] | str | ссылка на поток для сохранения | 
| void VMlib::SaveToStream | ( | const Eigen::MatrixXcd & | matr, | 
| std::ostream & | str | ||
| ) | 
Сохранение комплекснозначной матрицы в поток
| [in] | matr | константная ссылка на сохраняемую комплекснозначную матрицу | 
| [in,out] | str | ссылка на поток для сохранения | 
| void VMlib::SaveToStream | ( | const Eigen::VectorXd & | vec, | 
| std::ostream & | str | ||
| ) | 
| void VMlib::SaveToStream | ( | const std::vector< Point2D > & | vec, | 
| std::ostream & | str | ||
| ) | 
| int VMlib::sign | ( | T | x | ) | 
| 
 | inline | 
| void VMlib::SwapEnd | ( | T & | var | ) |