doc groups
This commit is contained in:
@@ -1,25 +1,6 @@
|
|||||||
#include "pip.h"
|
#include "pip.h"
|
||||||
|
|
||||||
//! [main]
|
//! [main]
|
||||||
int main(int argc, char ** argv) {
|
|
||||||
PICLI cli(argc, argv);
|
|
||||||
cli.addArgument("console");
|
|
||||||
cli.addArgument("debug");
|
|
||||||
cli.addArgument("Value", "v", "value", true);
|
|
||||||
if (cli.hasArgument("console"))
|
|
||||||
piCout << "console active";
|
|
||||||
if (cli.hasArgument("debug"))
|
|
||||||
piCout << "debug active";
|
|
||||||
piCout << "Value =" << cli.argumentValue("Value");
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
These executions are similar:
|
|
||||||
a.out -cd -v 10
|
|
||||||
a.out --value 10 -dc
|
|
||||||
a.out -c -v 10 -d
|
|
||||||
a.out --console -d -v 10
|
|
||||||
a.out --debug -c --value 10
|
|
||||||
//! [main]
|
//! [main]
|
||||||
|
|
||||||
void _() {
|
void _() {
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file picloudbase.h
|
/*! \file picloudbase.h
|
||||||
* \brief PICloud Base - Base class for PICloudClient and PICloud Server
|
* \ingroup Cloud
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Base class for PICloudClient and PICloudServer
|
||||||
|
* \~russian Базовый класс для PICloudClient и PICloudServer
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
PICloud Base - Base class for PICloudClient and PICloud Server
|
PICloud Base - Base class for PICloudClient and PICloud Server
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file picloudclient.h
|
/*! \file picloudclient.h
|
||||||
* \brief PICloud Client
|
* \ingroup Cloud
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english PICloud Client
|
||||||
|
* \~russian Клиент PICloud
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
PICloud Client
|
PICloud Client
|
||||||
|
|||||||
@@ -16,6 +16,37 @@
|
|||||||
You should have received a copy of the GNU Lesser General Public License
|
You should have received a copy of the GNU Lesser General Public License
|
||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
//! \defgroup Cloud
|
||||||
|
//! \~\brief
|
||||||
|
//! \~english Cloud transport over ethernet
|
||||||
|
//! \~russian Облачный транспорт через ethernet
|
||||||
|
//!
|
||||||
|
//! \~\details
|
||||||
|
//! \~english \section cmake_module Building with CMake
|
||||||
|
//! \~russian \section cmake_module Сборка с использованием CMake
|
||||||
|
//!
|
||||||
|
//! \code
|
||||||
|
//! find_package(PIP REQUIRED)
|
||||||
|
//! target_link_libraries([target] PIP::Cloud)
|
||||||
|
//! \endcode
|
||||||
|
//!
|
||||||
|
//! \~english \par Common
|
||||||
|
//! \~russian \par Общее
|
||||||
|
//!
|
||||||
|
//! \~english
|
||||||
|
//! These files provides server-side and client-side of PICloud transport.
|
||||||
|
//!
|
||||||
|
//! \~russian
|
||||||
|
//! Эти файлы обеспечивают серверную и клиентскую сторону транспорта PICloud.
|
||||||
|
//!
|
||||||
|
//! \~\authors
|
||||||
|
//! \~english
|
||||||
|
//! Ivan Pelipenko peri4ko@yandex.ru;
|
||||||
|
//! Andrey Bychkov work.a.b@yandex.ru;
|
||||||
|
//! \~russian
|
||||||
|
//! Иван Пелипенко peri4ko@yandex.ru;
|
||||||
|
//! Андрей Бычков work.a.b@yandex.ru;
|
||||||
|
//!
|
||||||
|
|
||||||
#ifndef PICLOUDMODULE_H
|
#ifndef PICLOUDMODULE_H
|
||||||
#define PICLOUDMODULE_H
|
#define PICLOUDMODULE_H
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file picloudserver.h
|
/*! \file picloudserver.h
|
||||||
* \brief PICloud Server
|
* \ingroup Cloud
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english PICloud Server
|
||||||
|
* \~russian Сервер PICloud
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
PICloud Server
|
PICloud Server
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file picloudtcp.h
|
/*! \file picloudtcp.h
|
||||||
* \brief PICloud TCP transport
|
* \ingroup Cloud
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english PICloud TCP transport
|
||||||
|
* \~russian TCP слой PICloud
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
PICloud TCP transport
|
PICloud TCP transport
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file picodeinfo.h
|
/*! \file picodeinfo.h
|
||||||
* \brief C++ code info structs
|
* \ingroup Code
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english C++ code info structs
|
||||||
|
* \~russian Структуры для C++ кода
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
C++ code info structs
|
C++ code info structs
|
||||||
|
|||||||
@@ -16,6 +16,37 @@
|
|||||||
You should have received a copy of the GNU Lesser General Public License
|
You should have received a copy of the GNU Lesser General Public License
|
||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
//! \defgroup Code
|
||||||
|
//! \~\brief
|
||||||
|
//! \~english C++ code parsing
|
||||||
|
//! \~russian Разбор C++ кода
|
||||||
|
//!
|
||||||
|
//! \~\details
|
||||||
|
//! \~english \section cmake_module Building with CMake
|
||||||
|
//! \~russian \section cmake_module Сборка с использованием CMake
|
||||||
|
//!
|
||||||
|
//! \code
|
||||||
|
//! find_package(PIP REQUIRED)
|
||||||
|
//! target_link_libraries([target] PIP)
|
||||||
|
//! \endcode
|
||||||
|
//!
|
||||||
|
//! \~english \par Common
|
||||||
|
//! \~russian \par Общее
|
||||||
|
//!
|
||||||
|
//! \~english
|
||||||
|
//! These files provides parsing C++ code and storage to use results of \a pip_cmg utility.
|
||||||
|
//!
|
||||||
|
//! \~russian
|
||||||
|
//! Эти файлы обеспечивают разбор C++ кода и хранение результатов работы утилиты \a pip_cmg.
|
||||||
|
//!
|
||||||
|
//! \~\authors
|
||||||
|
//! \~english
|
||||||
|
//! Ivan Pelipenko peri4ko@yandex.ru;
|
||||||
|
//! Andrey Bychkov work.a.b@yandex.ru;
|
||||||
|
//! \~russian
|
||||||
|
//! Иван Пелипенко peri4ko@yandex.ru;
|
||||||
|
//! Андрей Бычков work.a.b@yandex.ru;
|
||||||
|
//!
|
||||||
|
|
||||||
#ifndef PICODEMODULE_H
|
#ifndef PICODEMODULE_H
|
||||||
#define PICODEMODULE_H
|
#define PICODEMODULE_H
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file picodeparser.h
|
/*! \file picodeparser.h
|
||||||
* \brief C++ code parser
|
* \ingroup Code
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english C++ code parser
|
||||||
|
* \~russian Разбор C++ кода
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
C++ code parser
|
C++ code parser
|
||||||
|
|||||||
@@ -1,6 +1,10 @@
|
|||||||
/*! \file picompress.h
|
/*! \file picompress.h
|
||||||
* \brief Compress class using zlib
|
* \brief
|
||||||
*/
|
* \ingroup Compress
|
||||||
|
* \~\brief
|
||||||
|
* \~english Compress class zlib
|
||||||
|
* \~russian Сжатие с помощью zlib
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Compress class using zlib
|
Compress class using zlib
|
||||||
@@ -19,6 +23,37 @@
|
|||||||
You should have received a copy of the GNU Lesser General Public License
|
You should have received a copy of the GNU Lesser General Public License
|
||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
//! \defgroup Compress
|
||||||
|
//! \~\brief
|
||||||
|
//! \~english Compression support
|
||||||
|
//! \~russian Поддержка сжатия
|
||||||
|
//!
|
||||||
|
//! \~\details
|
||||||
|
//! \~english \section cmake_module Building with CMake
|
||||||
|
//! \~russian \section cmake_module Сборка с использованием CMake
|
||||||
|
//!
|
||||||
|
//! \code
|
||||||
|
//! find_package(PIP REQUIRED)
|
||||||
|
//! target_link_libraries([target] PIP::Compress)
|
||||||
|
//! \endcode
|
||||||
|
//!
|
||||||
|
//! \~english \par Common
|
||||||
|
//! \~russian \par Общее
|
||||||
|
//!
|
||||||
|
//! \~english
|
||||||
|
//! These files provides simple compression and decompression support.
|
||||||
|
//!
|
||||||
|
//! \~russian
|
||||||
|
//! Эти файлы обеспечивают простое сжатие и распакову.
|
||||||
|
//!
|
||||||
|
//! \~\authors
|
||||||
|
//! \~english
|
||||||
|
//! Ivan Pelipenko peri4ko@yandex.ru;
|
||||||
|
//! Andrey Bychkov work.a.b@yandex.ru;
|
||||||
|
//! \~russian
|
||||||
|
//! Иван Пелипенко peri4ko@yandex.ru;
|
||||||
|
//! Андрей Бычков work.a.b@yandex.ru;
|
||||||
|
//!
|
||||||
|
|
||||||
#ifndef PICOMPRESS_H
|
#ifndef PICOMPRESS_H
|
||||||
#define PICOMPRESS_H
|
#define PICOMPRESS_H
|
||||||
@@ -26,8 +61,16 @@
|
|||||||
#include "pip_compress_export.h"
|
#include "pip_compress_export.h"
|
||||||
#include "pibytearray.h"
|
#include "pibytearray.h"
|
||||||
|
|
||||||
|
//! \~english Compress "ba" with compression level "level", return empty %PIByteArray if no compression supports
|
||||||
|
//! \~russian Сжимает "ba" с уровнем сжатия "level", возвращает пустой %PIByteArray если нет поддержки
|
||||||
|
//! \~\ingroup Compress
|
||||||
|
//! \~\details
|
||||||
PIP_COMPRESS_EXPORT PIByteArray piCompress(const PIByteArray & ba, int level = 6);
|
PIP_COMPRESS_EXPORT PIByteArray piCompress(const PIByteArray & ba, int level = 6);
|
||||||
|
|
||||||
|
//! \~english Decompress "zba", return empty %PIByteArray if no compression supports
|
||||||
|
//! \~russian Распаковывает "zba", возвращает пустой %PIByteArray если нет поддержки
|
||||||
|
//! \~\ingroup Compress
|
||||||
|
//! \~\details
|
||||||
PIP_COMPRESS_EXPORT PIByteArray piDecompress(const PIByteArray & zba);
|
PIP_COMPRESS_EXPORT PIByteArray piDecompress(const PIByteArray & zba);
|
||||||
|
|
||||||
#endif // PICOMPRESS_H
|
#endif // PICOMPRESS_H
|
||||||
|
|||||||
@@ -16,6 +16,37 @@
|
|||||||
You should have received a copy of the GNU Lesser General Public License
|
You should have received a copy of the GNU Lesser General Public License
|
||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
//! \defgroup Console
|
||||||
|
//! \~\brief
|
||||||
|
//! \~english Console graphic
|
||||||
|
//! \~russian Графика в консоли
|
||||||
|
//!
|
||||||
|
//! \~\details
|
||||||
|
//! \~english \section cmake_module Building with CMake
|
||||||
|
//! \~russian \section cmake_module Сборка с использованием CMake
|
||||||
|
//!
|
||||||
|
//! \code
|
||||||
|
//! find_package(PIP REQUIRED)
|
||||||
|
//! target_link_libraries([target] PIP::Console)
|
||||||
|
//! \endcode
|
||||||
|
//!
|
||||||
|
//! \~english \par Common
|
||||||
|
//! \~russian \par Общее
|
||||||
|
//!
|
||||||
|
//! \~english
|
||||||
|
//! These files provides grab keyboard from console, simple tiling manager and virtual terminal.
|
||||||
|
//!
|
||||||
|
//! \~russian
|
||||||
|
//! Эти файлы обеспечивают захват клавиатуры в консоли, простой тайловый менеджер и виртуальный терминал.
|
||||||
|
//!
|
||||||
|
//! \~\authors
|
||||||
|
//! \~english
|
||||||
|
//! Ivan Pelipenko peri4ko@yandex.ru;
|
||||||
|
//! Andrey Bychkov work.a.b@yandex.ru;
|
||||||
|
//! \~russian
|
||||||
|
//! Иван Пелипенко peri4ko@yandex.ru;
|
||||||
|
//! Андрей Бычков work.a.b@yandex.ru;
|
||||||
|
//!
|
||||||
|
|
||||||
#ifndef PICONSOLEMODULE_H
|
#ifndef PICONSOLEMODULE_H
|
||||||
#define PICONSOLEMODULE_H
|
#define PICONSOLEMODULE_H
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file pikbdlistener.h
|
/*! \file pikbdlistener.h
|
||||||
* \brief Keyboard console input listener
|
* \ingroup Console
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Keyboard console input listener
|
||||||
|
* \~russian Консольный захват клавиатуры
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Keyboard grabber for console
|
Keyboard grabber for console
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file piscreen.h
|
/*! \file piscreen.h
|
||||||
* \brief Console GUI class
|
* \ingroup Console
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Console tiling manager
|
||||||
|
* \~russian Консольный тайловый менеджер
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Console GUI
|
Console GUI
|
||||||
|
|||||||
@@ -1,8 +1,9 @@
|
|||||||
/*! \file piscreenconsole.h
|
/*! \file piscreenconsole.h
|
||||||
* \brief Tile for PIScreen with PIConsole API
|
* \ingroup Console
|
||||||
*
|
* \~\brief
|
||||||
* This file declares TileVars
|
* \~english Tile for PIScreen with PIConsole API
|
||||||
*/
|
* \~russian Тайл для PIScreen с API PIConsole
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Tile for PIScreen with PIConsole API
|
Tile for PIScreen with PIConsole API
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file piscreendrawer.h
|
/*! \file piscreendrawer.h
|
||||||
* \brief Drawer for PIScreen
|
* \ingroup Console
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Drawer for PIScreen
|
||||||
|
* \~russian Отрисовщик для PIScreen
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Drawer for PIScreen
|
Drawer for PIScreen
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file piscreentile.h
|
/*! \file piscreentile.h
|
||||||
* \brief Basic PIScreen tile
|
* \ingroup Console
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Basic PIScreen tile
|
||||||
|
* \~russian Базовый тайл для PIScreen
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Basic PIScreen tile
|
Basic PIScreen tile
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file piscreentiles.h
|
/*! \file piscreentiles.h
|
||||||
* \brief Various tiles for PIScreen
|
* \ingroup Console
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Various tiles for PIScreen
|
||||||
|
* \~russian Различные тайлы для PIScreen
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Various tiles for PIScreen
|
Various tiles for PIScreen
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file piscreentypes.h
|
/*! \file piscreentypes.h
|
||||||
* \brief Types for PIScreen
|
* \ingroup Console
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Types for PIScreen
|
||||||
|
* \~russian Типы для PIScreen
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Types for PIScreen
|
Types for PIScreen
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file piterminal.h
|
/*! \file piterminal.h
|
||||||
* \brief Virtual terminal
|
* \ingroup Console
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Virtual terminal
|
||||||
|
* \~russian Виртуальный терминал
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Virtual terminal
|
Virtual terminal
|
||||||
|
|||||||
@@ -18,10 +18,22 @@
|
|||||||
*/
|
*/
|
||||||
//! \defgroup Containers
|
//! \defgroup Containers
|
||||||
//! \~\brief
|
//! \~\brief
|
||||||
//! \~english This module contains various standart containers realization.
|
//! \~english Various standart containers realization
|
||||||
//! \~russian Модуль содержит основные классы контейнеров.
|
//! \~russian Различные классы контейнеров
|
||||||
|
//!
|
||||||
//! \~\details
|
//! \~\details
|
||||||
//! \~english This includes:
|
//! \~english \section cmake_module Building with CMake
|
||||||
|
//! \~russian \section cmake_module Сборка с использованием CMake
|
||||||
|
//!
|
||||||
|
//! \~\code
|
||||||
|
//! find_package(PIP REQUIRED)
|
||||||
|
//! target_link_libraries([target] PIP)
|
||||||
|
//! \endcode
|
||||||
|
//!
|
||||||
|
//! \~english \section containers_module_list Content
|
||||||
|
//! \~russian \section containers_module_list Состав
|
||||||
|
//!
|
||||||
|
//! \~english
|
||||||
//! Class | Description
|
//! Class | Description
|
||||||
//! ------------- | -----------
|
//! ------------- | -----------
|
||||||
//! \a PIVector | Linear array, fast back insert
|
//! \a PIVector | Linear array, fast back insert
|
||||||
@@ -33,7 +45,7 @@
|
|||||||
//! \a PIPair | Pair
|
//! \a PIPair | Pair
|
||||||
//! \a PIVector2D | Linear 2D rectangle array
|
//! \a PIVector2D | Linear 2D rectangle array
|
||||||
//!
|
//!
|
||||||
//! \~russian В него входят:
|
//! \~russian
|
||||||
//! Класс | Описание
|
//! Класс | Описание
|
||||||
//! ------------- | -----------
|
//! ------------- | -----------
|
||||||
//! \a PIVector | Линейный массив, быстрое добавление в конец
|
//! \a PIVector | Линейный массив, быстрое добавление в конец
|
||||||
@@ -46,16 +58,6 @@
|
|||||||
//! \a PIVector2D | Линейный двумерный прямоугольный массив
|
//! \a PIVector2D | Линейный двумерный прямоугольный массив
|
||||||
//!
|
//!
|
||||||
//!
|
//!
|
||||||
//! \~english \section cmake_build_containers Building with CMake
|
|
||||||
//! Use the `find_package()` command to locate PIP package:
|
|
||||||
//! \~russian \section cmake_build_containers Сборка с использованием CMake
|
|
||||||
//! Используйте команду `find_package()` для подключения PIP в CMake:
|
|
||||||
//! \~\code
|
|
||||||
//! find_package(PIP REQUIRED)
|
|
||||||
//! target_link_libraries(${PROJECT_NAME} PIP)
|
|
||||||
//! \endcode
|
|
||||||
//!
|
|
||||||
//!
|
|
||||||
//! \~english \section stl_iterators STL-Style Iterators
|
//! \~english \section stl_iterators STL-Style Iterators
|
||||||
//! \~russian \section stl_iterators Итераторы в стиле STL
|
//! \~russian \section stl_iterators Итераторы в стиле STL
|
||||||
//! \~english
|
//! \~english
|
||||||
|
|||||||
@@ -44,7 +44,27 @@
|
|||||||
//!
|
//!
|
||||||
//! \~english \section PICLI_sec1 Example
|
//! \~english \section PICLI_sec1 Example
|
||||||
//! \~russian \section PICLI_sec0 Пример
|
//! \~russian \section PICLI_sec0 Пример
|
||||||
//! \~\snippet picli.cpp main
|
//! \~\code
|
||||||
|
//! int main(int argc, char ** argv) {
|
||||||
|
//! PICLI cli(argc, argv);
|
||||||
|
//! cli.addArgument("console");
|
||||||
|
//! cli.addArgument("debug");
|
||||||
|
//! cli.addArgument("Value", "v", "value", true);
|
||||||
|
//! if (cli.hasArgument("console"))
|
||||||
|
//! piCout << "console active";
|
||||||
|
//! if (cli.hasArgument("debug"))
|
||||||
|
//! piCout << "debug active";
|
||||||
|
//! piCout << "Value =" << cli.argumentValue("Value");
|
||||||
|
//! return 0;
|
||||||
|
//! }
|
||||||
|
//!
|
||||||
|
//! These executions are similar:
|
||||||
|
//! a.out -cd -v 10
|
||||||
|
//! a.out --value 10 -dc
|
||||||
|
//! a.out -c -v 10 -d
|
||||||
|
//! a.out --console -d -v 10
|
||||||
|
//! a.out --debug -c --value 10
|
||||||
|
//! \endcode
|
||||||
//!
|
//!
|
||||||
//! /}
|
//! /}
|
||||||
|
|
||||||
|
|||||||
@@ -16,31 +16,37 @@
|
|||||||
You should have received a copy of the GNU Lesser General Public License
|
You should have received a copy of the GNU Lesser General Public License
|
||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
/** \defgroup Core
|
//! \defgroup Core
|
||||||
* \~\brief
|
//! \~\brief
|
||||||
* \~english This module contains basic functionality.
|
//! \~english Basic functionality.
|
||||||
* \~russian Модуль обеспечивает базовую функциональность.
|
//! \~russian Базовая функциональность.
|
||||||
*
|
//!
|
||||||
* \~\details
|
//! \~\details
|
||||||
* Scope | Use
|
//! \~english \section cmake_module Building with CMake
|
||||||
* ----- | -------
|
//! \~russian \section cmake_module Сборка с использованием CMake
|
||||||
* C++ | #include <picoremodule.h>
|
//!
|
||||||
* CMake | PIP
|
//! \code
|
||||||
*
|
//! find_package(PIP REQUIRED)
|
||||||
* \~english
|
//! target_link_libraries([target] PIP)
|
||||||
* These files provides platform abstraction, useful macros, methods and classes
|
//! \endcode
|
||||||
*
|
//!
|
||||||
* \~russian
|
//! \~english \par Common
|
||||||
* Эти файлы обеспечивают абстракцию операционной системы, полезные макросы, методы и классы
|
//! \~russian \par Общее
|
||||||
*
|
//!
|
||||||
* \~\authors
|
//! \~english
|
||||||
* \~english
|
//! These files provides platform abstraction, useful macros, methods and classes
|
||||||
* Ivan Pelipenko peri4ko@yandex.ru;
|
//!
|
||||||
* Andrey Bychkov work.a.b@yandex.ru;
|
//! \~russian
|
||||||
* \~russian
|
//! Эти файлы обеспечивают абстракцию операционной системы, полезные макросы, методы и классы
|
||||||
* Иван Пелипенко peri4ko@yandex.ru;
|
//!
|
||||||
* Андрей Бычков work.a.b@yandex.ru;
|
//! \~\authors
|
||||||
*/
|
//! \~english
|
||||||
|
//! Ivan Pelipenko peri4ko@yandex.ru;
|
||||||
|
//! Andrey Bychkov work.a.b@yandex.ru;
|
||||||
|
//! \~russian
|
||||||
|
//! Иван Пелипенко peri4ko@yandex.ru;
|
||||||
|
//! Андрей Бычков work.a.b@yandex.ru;
|
||||||
|
//!
|
||||||
|
|
||||||
#ifndef PICOREMODULE_H
|
#ifndef PICOREMODULE_H
|
||||||
#define PICOREMODULE_H
|
#define PICOREMODULE_H
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file piauth.h
|
/*! \file piauth.h
|
||||||
* \brief PIP Authentication API
|
* \ingroup Crypt
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Authentication API
|
||||||
|
* \~russian API аутентификации
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
PIP Authentication API
|
PIP Authentication API
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file picrypt.h
|
/*! \file picrypt.h
|
||||||
* \brief Cryptographic class using lib Sodium
|
* \ingroup Crypt
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Cryptographic using libsodium
|
||||||
|
* \~russian Шифрование с помощью libsodium
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Cryptographic class using lib Sodium
|
Cryptographic class using lib Sodium
|
||||||
|
|||||||
@@ -16,6 +16,37 @@
|
|||||||
You should have received a copy of the GNU Lesser General Public License
|
You should have received a copy of the GNU Lesser General Public License
|
||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
//! \defgroup Crypt
|
||||||
|
//! \~\brief
|
||||||
|
//! \~english Cryptographic support
|
||||||
|
//! \~russian Поддержка шифрования
|
||||||
|
//!
|
||||||
|
//! \~\details
|
||||||
|
//! \~english \section cmake_module Building with CMake
|
||||||
|
//! \~russian \section cmake_module Сборка с использованием CMake
|
||||||
|
//!
|
||||||
|
//! \code
|
||||||
|
//! find_package(PIP REQUIRED)
|
||||||
|
//! target_link_libraries([target] PIP::Crypt)
|
||||||
|
//! \endcode
|
||||||
|
//!
|
||||||
|
//! \~english \par Common
|
||||||
|
//! \~russian \par Общее
|
||||||
|
//!
|
||||||
|
//! \~english
|
||||||
|
//! These files provides basic and symmetric cryptographic support via [libsodium](https://doc.libsodium.org/).
|
||||||
|
//!
|
||||||
|
//! \~russian
|
||||||
|
//! Эти файлы обеспечивают базовое и симметричное шифрование с помощью [libsodium](https://doc.libsodium.org/).
|
||||||
|
//!
|
||||||
|
//! \~\authors
|
||||||
|
//! \~english
|
||||||
|
//! Ivan Pelipenko peri4ko@yandex.ru;
|
||||||
|
//! Andrey Bychkov work.a.b@yandex.ru;
|
||||||
|
//! \~russian
|
||||||
|
//! Иван Пелипенко peri4ko@yandex.ru;
|
||||||
|
//! Андрей Бычков work.a.b@yandex.ru;
|
||||||
|
//!
|
||||||
|
|
||||||
#ifndef PICRYPTMODULE_H
|
#ifndef PICRYPTMODULE_H
|
||||||
#define PICRYPTMODULE_H
|
#define PICRYPTMODULE_H
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file piellipsoidmodel.h
|
/*! \file piellipsoidmodel.h
|
||||||
* \brief Contains geo ellipsoid models
|
* \ingroup Geo
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Geographical ellipsoid Earth models
|
||||||
|
* \~russian Географическая эллипсоидная модель Земли
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Contains geo ellipsoid models
|
Contains geo ellipsoid models
|
||||||
|
|||||||
@@ -16,6 +16,39 @@
|
|||||||
You should have received a copy of the GNU Lesser General Public License
|
You should have received a copy of the GNU Lesser General Public License
|
||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
//! \defgroup Geo
|
||||||
|
//! \~\brief
|
||||||
|
//! \~english Geographical position and Earth models
|
||||||
|
//! \~russian Географическая позиция и модели Земли
|
||||||
|
//!
|
||||||
|
//! \~\details
|
||||||
|
//! \~english \section cmake_module Building with CMake
|
||||||
|
//! \~russian \section cmake_module Сборка с использованием CMake
|
||||||
|
//!
|
||||||
|
//! \code
|
||||||
|
//! find_package(PIP REQUIRED)
|
||||||
|
//! target_link_libraries([target] PIP)
|
||||||
|
//! \endcode
|
||||||
|
//!
|
||||||
|
//! \~english \par Common
|
||||||
|
//! \~russian \par Общее
|
||||||
|
//!
|
||||||
|
//! \~english
|
||||||
|
//! These files provides geographical position, several Earth models and converting
|
||||||
|
//! from one model to another.
|
||||||
|
//!
|
||||||
|
//! \~russian
|
||||||
|
//! Эти файлы обеспечивают географическую позицию, несколько моделей Земли и
|
||||||
|
//! преобразования из одной модели в другую.
|
||||||
|
//!
|
||||||
|
//! \~\authors
|
||||||
|
//! \~english
|
||||||
|
//! Ivan Pelipenko peri4ko@yandex.ru;
|
||||||
|
//! Andrey Bychkov work.a.b@yandex.ru;
|
||||||
|
//! \~russian
|
||||||
|
//! Иван Пелипенко peri4ko@yandex.ru;
|
||||||
|
//! Андрей Бычков work.a.b@yandex.ru;
|
||||||
|
//!
|
||||||
|
|
||||||
#ifndef PIGEOMODULE_H
|
#ifndef PIGEOMODULE_H
|
||||||
#define PIGEOMODULE_H
|
#define PIGEOMODULE_H
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file pigeoposition.h
|
/*! \file pigeoposition.h
|
||||||
* \brief Class for geo position storage and conversions
|
* \ingroup Geo
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Class for geo position storage and conversions
|
||||||
|
* \~russian Класс для хранения географической позиции и преобразований
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Class for geo position storage and conversions
|
Class for geo position storage and conversions
|
||||||
|
|||||||
@@ -16,6 +16,37 @@
|
|||||||
You should have received a copy of the GNU Lesser General Public License
|
You should have received a copy of the GNU Lesser General Public License
|
||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
//! \defgroup Introspection
|
||||||
|
//! \~\brief
|
||||||
|
//! \~english Internal PIP introspection
|
||||||
|
//! \~russian Внутренняя интроспекция PIP
|
||||||
|
//!
|
||||||
|
//! \~\details
|
||||||
|
//! \~english \section cmake_module Building with CMake
|
||||||
|
//! \~russian \section cmake_module Сборка с использованием CMake
|
||||||
|
//!
|
||||||
|
//! \code
|
||||||
|
//! find_package(PIP REQUIRED)
|
||||||
|
//! target_link_libraries([target] PIP)
|
||||||
|
//! \endcode
|
||||||
|
//!
|
||||||
|
//! \~english \par Common
|
||||||
|
//! \~russian \par Общее
|
||||||
|
//!
|
||||||
|
//! \~english
|
||||||
|
//! These files provides gathering and sending internal PIP statistics.
|
||||||
|
//!
|
||||||
|
//! \~russian
|
||||||
|
//! Эти файлы обеспечивают сбор и отправку внутренних статистик PIP.
|
||||||
|
//!
|
||||||
|
//! \~\authors
|
||||||
|
//! \~english
|
||||||
|
//! Ivan Pelipenko peri4ko@yandex.ru;
|
||||||
|
//! Andrey Bychkov work.a.b@yandex.ru;
|
||||||
|
//! \~russian
|
||||||
|
//! Иван Пелипенко peri4ko@yandex.ru;
|
||||||
|
//! Андрей Бычков work.a.b@yandex.ru;
|
||||||
|
//!
|
||||||
|
|
||||||
#ifndef PIINTROSPECTION_BASE_H
|
#ifndef PIINTROSPECTION_BASE_H
|
||||||
#define PIINTROSPECTION_BASE_H
|
#define PIINTROSPECTION_BASE_H
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file pibinarylog.h
|
/*! \file pibinarylog.h
|
||||||
* \brief Binary log
|
* \ingroup IO
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Binary log
|
||||||
|
* \~russian Бинарный лог
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Class for write binary data to logfile, and read or playback this data
|
Class for write binary data to logfile, and read or playback this data
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file pican.h
|
/*! \file pican.h
|
||||||
* \brief CAN device
|
* \ingroup IO
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english CAN device
|
||||||
|
* \~russian Устройство CAN
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
CAN
|
CAN
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file piconfig.h
|
/*! \file piconfig.h
|
||||||
* \brief Configuration parser and writer
|
* \ingroup IO
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Configuration files parser and writer
|
||||||
|
* \~russian Разбор и запись конфигурационных файлов
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Configuration parser and writer
|
Configuration parser and writer
|
||||||
@@ -330,7 +333,7 @@ public:
|
|||||||
bool open(const PIString & path, PIIODevice::DeviceMode mode = PIIODevice::ReadWrite);
|
bool open(const PIString & path, PIIODevice::DeviceMode mode = PIIODevice::ReadWrite);
|
||||||
|
|
||||||
//! Read configuration string "string" in mode "mode"
|
//! Read configuration string "string" in mode "mode"
|
||||||
bool open(PIString * string, PIIODevice::DeviceMode mode = PIIODevice::ReadWrite);\
|
bool open(PIString * string, PIIODevice::DeviceMode mode = PIIODevice::ReadWrite);
|
||||||
|
|
||||||
bool isOpened() const;
|
bool isOpened() const;
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file pidir.h
|
/*! \file pidir.h
|
||||||
* \brief Local directory
|
* \ingroup IO
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Local directory
|
||||||
|
* \~russian Локальная директория
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Directory
|
Directory
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file piethernet.h
|
/*! \file piethernet.h
|
||||||
* \brief Ethernet device
|
* \ingroup IO
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Ethernet device
|
||||||
|
* \~russian Устройство Ethernet
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Ethernet, UDP/TCP Broadcast/Multicast
|
Ethernet, UDP/TCP Broadcast/Multicast
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file pifile.h
|
/*! \file pifile.h
|
||||||
* \brief Local file
|
* \ingroup IO
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Local file
|
||||||
|
* \~russian Локальный файл
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
File
|
File
|
||||||
|
|||||||
@@ -1,5 +1,8 @@
|
|||||||
/*! \file pigpio.h
|
/*! \file pigpio.h
|
||||||
* \brief GPIO
|
* \ingroup IO
|
||||||
|
* \~\brief
|
||||||
|
* \~english GPIO
|
||||||
|
* \~russian GPIO
|
||||||
*/
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file piiobytearray.h
|
/*! \file piiobytearray.h
|
||||||
* \brief PIIODevice wrapper around PIByteArray
|
* \ingroup IO
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english PIIODevice wrapper around PIByteArray
|
||||||
|
* \~russian Обертка PIIODevice вокруг PIByteArray
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
PIIODevice wrapper around PIByteArray
|
PIIODevice wrapper around PIByteArray
|
||||||
|
|||||||
@@ -23,95 +23,101 @@
|
|||||||
#include "pipropertystorage.h"
|
#include "pipropertystorage.h"
|
||||||
|
|
||||||
|
|
||||||
/*! \class PIIODevice
|
//! \addtogroup IO
|
||||||
* \brief Base class for input/output classes
|
//! \{
|
||||||
*
|
//! \class PIIODevice piiodevice.h
|
||||||
* \section PIIODevice_sec0 Synopsis
|
//! \brief
|
||||||
* This class provide open/close logic, threaded read/write and virtual input/output
|
//! \~english Base class for input/output classes
|
||||||
* functions \a read() and \a write(). You should implement pure virtual
|
//! \~russian Базовый класс утройств ввода/вывода
|
||||||
* function \a openDevice() in your subclass.
|
//!
|
||||||
*
|
//! \~\details
|
||||||
* \section PIIODevice_sec1 Open and close
|
//! \section PIIODevice_sec0 Synopsis
|
||||||
* PIIODevice have boolean variable indicated open status. Returns of functions
|
//! This class provide open/close logic, threaded read/write and virtual input/output
|
||||||
* \a openDevice() and \a closeDevice() change this variable.
|
//! functions \a read() and \a write(). You should implement pure virtual
|
||||||
*
|
//! function \a openDevice() in your subclass.
|
||||||
* \section PIIODevice_sec2 Threaded read
|
//!
|
||||||
* PIIODevice based on PIThread, so it`s overload \a run() to exec \a read()
|
//! \section PIIODevice_sec1 Open and close
|
||||||
* in background thread. If read is successful virtual function \a threadedRead()
|
//! PIIODevice have boolean variable indicated open status. Returns of functions
|
||||||
* is executed. Default implementation of this function execute external static
|
//! \a openDevice() and \a closeDevice() change this variable.
|
||||||
* function set by \a setThreadedReadSlot() with data set by \a setThreadedReadData().
|
//!
|
||||||
* Extrenal static function should have format \n
|
//! \section PIIODevice_sec2 Threaded read
|
||||||
* bool func_name(void * Threaded_read_data, uchar * readed_data, int readed_size)\n
|
//! PIIODevice based on PIThread, so it`s overload \a run() to exec \a read()
|
||||||
* Threaded read starts with function \a startThreadedRead().
|
//! in background thread. If read is successful virtual function \a threadedRead()
|
||||||
*
|
//! is executed. Default implementation of this function execute external static
|
||||||
* \section PIIODevice_sec3 Threaded write
|
//! function set by \a setThreadedReadSlot() with data set by \a setThreadedReadData().
|
||||||
* PIIODevice aggregate another PIThread to perform a threaded write by function
|
//! Extrenal static function should have format \n
|
||||||
* \a writeThreaded(). This function add task to internal queue and return
|
//! bool func_name(void * Threaded_read_data, uchar * readed_data, int readed_size)\n
|
||||||
* queue entry ID. You should start write thread by function \a startThreadedWrite.
|
//! Threaded read starts with function \a startThreadedRead().
|
||||||
* On successful write event \a threadedWriteEvent is raised with two arguments -
|
//!
|
||||||
* task ID and written bytes count.
|
//! \section PIIODevice_sec3 Threaded write
|
||||||
*
|
//! PIIODevice aggregate another PIThread to perform a threaded write by function
|
||||||
* \section PIIODevice_sec4 Internal buffer
|
//! \a writeThreaded(). This function add task to internal queue and return
|
||||||
* PIIODevice have internal buffer for threaded read, and \a threadedRead() function
|
//! queue entry ID. You should start write thread by function \a startThreadedWrite.
|
||||||
* receive pointer to this buffer in first argument. You can adjust size of this buffer
|
//! On successful write event \a threadedWriteEvent is raised with two arguments -
|
||||||
* by function \a setThreadedReadBufferSize() \n
|
//! task ID and written bytes count.
|
||||||
* Default size of this buffer is 4096 bytes.
|
//!
|
||||||
*
|
//! \section PIIODevice_sec4 Internal buffer
|
||||||
* \section PIIODevice_sec5 Reopen
|
//! PIIODevice have internal buffer for threaded read, and \a threadedRead() function
|
||||||
* When threaded read is begin its call \a open() if device is closed. While threaded
|
//! receive pointer to this buffer in first argument. You can adjust size of this buffer
|
||||||
* read running PIIODevice check if device opened every read and if not call \a open()
|
//! by function \a setThreadedReadBufferSize() \n
|
||||||
* every reopen timeout if reopen enabled. Reopen timeout is set by \a setReopenTimeout(),
|
//! Default size of this buffer is 4096 bytes.
|
||||||
* reopen enable is set by \a setReopenEnabled().
|
//!
|
||||||
*
|
//! \section PIIODevice_sec5 Reopen
|
||||||
* \section PIIODevice_sec6 Configuration
|
//! When threaded read is begin its call \a open() if device is closed. While threaded
|
||||||
* This is virtual function \a configureDevice() which executes when \a configure()
|
//! read running PIIODevice check if device opened every read and if not call \a open()
|
||||||
* executes. This function takes two arguments: "e_main" and "e_parent" as void*. There
|
//! every reopen timeout if reopen enabled. Reopen timeout is set by \a setReopenTimeout(),
|
||||||
* are pointers to PIConfig::Entry entries of section "section" and their parent. If
|
//! reopen enable is set by \a setReopenEnabled().
|
||||||
* there is no parent "e_parent" = 0. Function \a configure() set three parameters of
|
//!
|
||||||
* device: "reopenEnabled", "reopenTimeout" and "threadedReadBufferSize", then execute
|
//! \section PIIODevice_sec6 Configuration
|
||||||
* function \a configureDevice().
|
//! This is virtual function \a configureDevice() which executes when \a configure()
|
||||||
* \n Each ancestor of %PIIODevice reimlements \a configureDevice() function to be able
|
//! executes. This function takes two arguments: "e_main" and "e_parent" as void*. There
|
||||||
* to be confured from configuration file. This parameters described at section
|
//! are pointers to PIConfig::Entry entries of section "section" and their parent. If
|
||||||
* "Configurable parameters" in the class reference. \n Usage example:
|
//! there is no parent "e_parent" = 0. Function \a configure() set three parameters of
|
||||||
* \snippet piiodevice.cpp configure
|
//! device: "reopenEnabled", "reopenTimeout" and "threadedReadBufferSize", then execute
|
||||||
* Implementation example:
|
//! function \a configureDevice().
|
||||||
* \snippet piiodevice.cpp configureDevice
|
//! \n Each ancestor of %PIIODevice reimlements \a configureDevice() function to be able
|
||||||
*
|
//! to be confured from configuration file. This parameters described at section
|
||||||
* \section PIIODevice_sec7 Creating devices by unambiguous string
|
//! "Configurable parameters" in the class reference. \n Usage example:
|
||||||
* There are some virtual functions to describe child class without its declaration.
|
//! \snippet piiodevice.cpp configure
|
||||||
* \n \a fullPathPrefix() should returns unique prefix of device
|
//! Implementation example:
|
||||||
* \n \a constructFullPath() should returns full unambiguous string, contains prefix and all device parameters
|
//! \snippet piiodevice.cpp configureDevice
|
||||||
* \n \a configureFromFullPath() provide configuring device from full unambiguous string without prefix and "://"
|
//!
|
||||||
* \n Macro PIIODEVICE should be used instead of PIOBJECT
|
//! \section PIIODevice_sec7 Creating devices by unambiguous string
|
||||||
* \n Macro REGISTER_DEVICE should be used after definition of class, i.e. at the last line of *.cpp file
|
//! There are some virtual functions to describe child class without its declaration.
|
||||||
* \n \n If custom I/O device corresponds there rules, it can be returned by function \a createFromFullPath().
|
//! \n \a fullPathPrefix() should returns unique prefix of device
|
||||||
* \n Each PIP I/O device has custom unambiguous string description:
|
//! \n \a constructFullPath() should returns full unambiguous string, contains prefix and all device parameters
|
||||||
* * PIFile: "file://<path>"
|
//! \n \a configureFromFullPath() provide configuring device from full unambiguous string without prefix and "://"
|
||||||
* * PIBinaryLog: "binlog://<logDir>[:<filePrefix>][:<defaultID>]"
|
//! \n Macro PIIODEVICE should be used instead of PIOBJECT
|
||||||
* * PISerial: "ser://<device>:<speed(50|...|115200)>[:<dataBitsCount(6|7|8)>][:<parity(N|E|O)>][:<stopBits(1|2)>]"
|
//! \n Macro REGISTER_DEVICE should be used after definition of class, i.e. at the last line of *.cpp file
|
||||||
* * PIEthernet: UDP "eth://UDP:<readIP>:<readPort>:<sendIP>:<sendPort>[:<multicast(mcast:<ip>)>]"
|
//! \n \n If custom I/O device corresponds there rules, it can be returned by function \a createFromFullPath().
|
||||||
* * PIEthernet: TCP "eth://TCP:<IP>:<Port>"
|
//! \n Each PIP I/O device has custom unambiguous string description:
|
||||||
* * PIUSB: "usb://<vid>:<pid>[:<deviceNumber>][:<readEndpointNumber>][:<writeEndpointNumber>]"
|
//! * PIFile: "file://<path>"
|
||||||
* \n \n Examples:
|
//! * PIBinaryLog: "binlog://<logDir>[:<filePrefix>][:<defaultID>]"
|
||||||
* * PIFile: "file://../text.txt"
|
//! * PISerial: "ser://<device>:<speed(50|...|115200)>[:<dataBitsCount(6|7|8)>][:<parity(N|E|O)>][:<stopBits(1|2)>]"
|
||||||
* * PIBinaryLog: "binlog://../logs/:mylog_:1"
|
//! * PIEthernet: UDP "eth://UDP:<readIP>:<readPort>:<sendIP>:<sendPort>[:<multicast(mcast:<ip>)>]"
|
||||||
* * PISerial: "ser:///dev/ttyUSB0:9600:8:N:1", equivalent "ser:///dev/ttyUSB0:9600"
|
//! * PIEthernet: TCP "eth://TCP:<IP>:<Port>"
|
||||||
* * PIEthernet: "eth://TCP:127.0.0.1:16666", "eth://UDP:192.168.0.5:16666:192.168.0.6:16667:mcast:234.0.2.1:mcast:234.0.2.2"
|
//! * PIUSB: "usb://<vid>:<pid>[:<deviceNumber>][:<readEndpointNumber>][:<writeEndpointNumber>]"
|
||||||
* * PIUSB: "usb://0bb4:0c86:1:1:2"
|
//! \n \n Examples:
|
||||||
* \n \n
|
//! * PIFile: "file://../text.txt"
|
||||||
* So, custom I/O device can be created with next call:
|
//! * PIBinaryLog: "binlog://../logs/:mylog_:1"
|
||||||
* \code{cpp}
|
//! * PISerial: "ser:///dev/ttyUSB0:9600:8:N:1", equivalent "ser:///dev/ttyUSB0:9600"
|
||||||
* // creatring devices
|
//! * PIEthernet: "eth://TCP:127.0.0.1:16666", "eth://UDP:192.168.0.5:16666:192.168.0.6:16667:mcast:234.0.2.1:mcast:234.0.2.2"
|
||||||
* PISerial * ser = (PISerial * )PIIODevice::createFromFullPath("ser://COM1:115200");
|
//! * PIUSB: "usb://0bb4:0c86:1:1:2"
|
||||||
* PIEthernet * eth = (PIEthernet * )PIIODevice::createFromFullPath("eth://UDP:127.0.0.1:4001:127.0.0.1:4002");
|
//! \n \n
|
||||||
* // examine devices
|
//! So, custom I/O device can be created with next call:
|
||||||
* piCout << ser << ser->properties();
|
//! \code{cpp}
|
||||||
* piCout << eth << eth->properties();
|
//! // creatring devices
|
||||||
* \endcode
|
//! PISerial * ser = (PISerial * )PIIODevice::createFromFullPath("ser://COM1:115200");
|
||||||
*
|
//! PIEthernet * eth = (PIEthernet * )PIIODevice::createFromFullPath("eth://UDP:127.0.0.1:4001:127.0.0.1:4002");
|
||||||
* \section PIIODevice_ex0 Example
|
//! // examine devices
|
||||||
* \snippet piiodevice.cpp 0
|
//! piCout << ser << ser->properties();
|
||||||
*/
|
//! piCout << eth << eth->properties();
|
||||||
|
//! \endcode
|
||||||
|
//!
|
||||||
|
//! \section PIIODevice_ex0 Example
|
||||||
|
//! \snippet piiodevice.cpp 0
|
||||||
|
//!
|
||||||
|
//! \}
|
||||||
|
|
||||||
|
|
||||||
PIMutex PIIODevice::nfp_mutex;
|
PIMutex PIIODevice::nfp_mutex;
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file piiodevice.h
|
/*! \file piiodevice.h
|
||||||
* \brief Abstract input/output device
|
* \ingroup IO
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Abstract input/output device
|
||||||
|
* \~russian Базовый класс утройств ввода/вывода
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Abstract input/output device
|
Abstract input/output device
|
||||||
|
|||||||
@@ -16,6 +16,38 @@
|
|||||||
You should have received a copy of the GNU Lesser General Public License
|
You should have received a copy of the GNU Lesser General Public License
|
||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
//! \defgroup IO
|
||||||
|
//! \~\brief
|
||||||
|
//! \~english Input/output devices.
|
||||||
|
//! \~russian Устройства ввода/вывода.
|
||||||
|
//!
|
||||||
|
//! \~\details
|
||||||
|
//! \~english \section cmake_module Building with CMake
|
||||||
|
//! \~russian \section cmake_module Сборка с использованием CMake
|
||||||
|
//!
|
||||||
|
//! \code
|
||||||
|
//! find_package(PIP REQUIRED)
|
||||||
|
//! target_link_libraries([target] PIP)
|
||||||
|
//! \endcode
|
||||||
|
//!
|
||||||
|
//! \~english \par Common
|
||||||
|
//! \~russian \par Общее
|
||||||
|
//!
|
||||||
|
//! \~english
|
||||||
|
//! These files provides base IO device, many realizations and utilites to work with %PIIODevice
|
||||||
|
//!
|
||||||
|
//! \~russian
|
||||||
|
//! Эти файлы обеспечивают базовый класс устройства ввода/вывода, много реализаций и утилит
|
||||||
|
//! для работы с %PIIODevice
|
||||||
|
//!
|
||||||
|
//! \~\authors
|
||||||
|
//! \~english
|
||||||
|
//! Ivan Pelipenko peri4ko@yandex.ru;
|
||||||
|
//! Andrey Bychkov work.a.b@yandex.ru;
|
||||||
|
//! \~russian
|
||||||
|
//! Иван Пелипенко peri4ko@yandex.ru;
|
||||||
|
//! Андрей Бычков work.a.b@yandex.ru;
|
||||||
|
//!
|
||||||
|
|
||||||
#ifndef PIIODEVICESMODULE_H
|
#ifndef PIIODEVICESMODULE_H
|
||||||
#define PIIODEVICESMODULE_H
|
#define PIIODEVICESMODULE_H
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file piiostring.h
|
/*! \file piiostring.h
|
||||||
* \brief PIIODevice wrapper around PIString
|
* \ingroup IO
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english PIIODevice wrapper around PIString
|
||||||
|
* \~russian Обертка PIIODevice вокруг PIString
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
PIIODevice wrapper around PIString
|
PIIODevice wrapper around PIString
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file pipeer.h
|
/*! \file pipeer.h
|
||||||
* \brief Peering net node
|
* \ingroup IO
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Peering net node
|
||||||
|
* \~russian Элемент пиринговой сети
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Peer - named I/O ethernet node, forming self-organized peering network
|
Peer - named I/O ethernet node, forming self-organized peering network
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file piserial.h
|
/*! \file piserial.h
|
||||||
* \brief Serial device
|
* \ingroup IO
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Serial device
|
||||||
|
* \~russian Последовательный порт
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
COM
|
COM
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file pisharedmemory.h
|
/*! \file pisharedmemory.h
|
||||||
* \brief Shared memory
|
* \ingroup IO
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Shared memory
|
||||||
|
* \~russian Разделяемая память
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Shared Memory
|
Shared Memory
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file pispi.h
|
/*! \file pispi.h
|
||||||
* \brief SPI device
|
* \ingroup IO
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english SPI device
|
||||||
|
* \~russian Устройство SPI
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
SPI
|
SPI
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file pitransparentdevice.h
|
/*! \file pitransparentdevice.h
|
||||||
* \brief PIIODevice that pass write to read
|
* \ingroup IO
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english PIIODevice that pass write to read
|
||||||
|
* \~russian PIIODevice который транслирует запись на чтение
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
PIIODevice that pass write to read
|
PIIODevice that pass write to read
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file piusb.h
|
/*! \file piusb.h
|
||||||
* \brief USB device
|
* \ingroup USB
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english USB device
|
||||||
|
* \~russian Устройство USB
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
USB, based on libusb
|
USB, based on libusb
|
||||||
@@ -19,6 +22,37 @@
|
|||||||
You should have received a copy of the GNU Lesser General Public License
|
You should have received a copy of the GNU Lesser General Public License
|
||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
//! \defgroup USB
|
||||||
|
//! \~\brief
|
||||||
|
//! \~english USB support via libusb
|
||||||
|
//! \~russian Поддержка USB с помощью libusb
|
||||||
|
//!
|
||||||
|
//! \~\details
|
||||||
|
//! \~english \section cmake_module Building with CMake
|
||||||
|
//! \~russian \section cmake_module Сборка с использованием CMake
|
||||||
|
//!
|
||||||
|
//! \code
|
||||||
|
//! find_package(PIP REQUIRED)
|
||||||
|
//! target_link_libraries([target] PIP::USB)
|
||||||
|
//! \endcode
|
||||||
|
//!
|
||||||
|
//! \~english \par Common
|
||||||
|
//! \~russian \par Общее
|
||||||
|
//!
|
||||||
|
//! \~english
|
||||||
|
//! These files provides works with raw USB device
|
||||||
|
//!
|
||||||
|
//! \~russian
|
||||||
|
//! Эти файлы обеспечивают работу с сырым USB устройством
|
||||||
|
//!
|
||||||
|
//! \~\authors
|
||||||
|
//! \~english
|
||||||
|
//! Ivan Pelipenko peri4ko@yandex.ru;
|
||||||
|
//! Andrey Bychkov work.a.b@yandex.ru;
|
||||||
|
//! \~russian
|
||||||
|
//! Иван Пелипенко peri4ko@yandex.ru;
|
||||||
|
//! Андрей Бычков work.a.b@yandex.ru;
|
||||||
|
//!
|
||||||
|
|
||||||
#ifndef PIUSB_H
|
#ifndef PIUSB_H
|
||||||
#define PIUSB_H
|
#define PIUSB_H
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file pibasetransfer.h
|
/*! \file pibasetransfer.h
|
||||||
* \brief Base class for reliable send and receive data in fixed packets with error correction, pause and resume
|
* \ingroup IO
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Base class for reliable send and receive data in fixed packets with error correction, pause and resume
|
||||||
|
* \~russian Базовый класс для надежного обмена данными с помощью фиксированных пакетов с коррекцией ошибок и паузой
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Base class for reliable send and receive data in fixed packets with error correction, pause and resume
|
Base class for reliable send and receive data in fixed packets with error correction, pause and resume
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file pibroadcast.h
|
/*! \file pibroadcast.h
|
||||||
* \brief Broadcast for all interfaces, including loopback
|
* \ingroup IO-Utils
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Broadcast for all interfaces, including loopback
|
||||||
|
* \~russian Широкое вещание на все интерфейсы, включая loopback
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Broadcast for all interfaces, including loopback
|
Broadcast for all interfaces, including loopback
|
||||||
|
|||||||
@@ -1,6 +1,10 @@
|
|||||||
/*! \file piconnection.h
|
/*! \file piconnection.h
|
||||||
* \brief Complex I/O point
|
* \brief
|
||||||
*/
|
* \ingroup IO-Utils
|
||||||
|
* \~\brief
|
||||||
|
* \~english Complex I/O point
|
||||||
|
* \~russian Составное устройство ввода/вывода
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Complex I/O point
|
Complex I/O point
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file pidatatransfer.h
|
/*! \file pidatatransfer.h
|
||||||
* \brief Class for send and receive PIByteArray via \a PIBaseTransfer
|
* \ingroup IO
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Class for send and receive PIByteArray via \a PIBaseTransfer
|
||||||
|
* \~russian Класс для отправки и приема PIByteArray с помощью \a PIBaseTransfer
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Class for send and receive PIByteArray via PIBaseTransfer
|
Class for send and receive PIByteArray via PIBaseTransfer
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file pidiagnostics.h
|
/*! \file pidiagnostics.h
|
||||||
* \brief Connection quality diagnostics
|
* \ingroup IO
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Connection quality diagnostics
|
||||||
|
* \~russian Диагностика качества связи
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Speed and quality in/out diagnostics
|
Speed and quality in/out diagnostics
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file piethutilbase.h
|
/*! \file piethutilbase.h
|
||||||
* \brief Base class for ethernet utils
|
* \ingroup IO-Utils
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Base class for ethernet utils
|
||||||
|
* \~russian Базовый класс для утилит ethernet
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Base class for ethernet utils
|
Base class for ethernet utils
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file pifiletransfer.h
|
/*! \file pifiletransfer.h
|
||||||
* \brief Class for send and receive files and directories via \a PIBaseTransfer
|
* \ingroup IO
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Class for send and receive files and directories via \a PIBaseTransfer
|
||||||
|
* \~russian Класс для отправки и приема файлов и папок с помощью \a PIBaseTransfer
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Class for send and receive files and directories via PIBaseTransfer
|
Class for send and receive files and directories via PIBaseTransfer
|
||||||
|
|||||||
@@ -16,10 +16,42 @@
|
|||||||
You should have received a copy of the GNU Lesser General Public License
|
You should have received a copy of the GNU Lesser General Public License
|
||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
//! \defgroup IO-Utils
|
||||||
|
//! \~\brief
|
||||||
|
//! \~english Complex channel transport
|
||||||
|
//! \~russian Сложный канальный транспорт
|
||||||
|
//!
|
||||||
|
//! \~\details
|
||||||
|
//! \~english \section cmake_module Building with CMake
|
||||||
|
//! \~russian \section cmake_module Сборка с использованием CMake
|
||||||
|
//!
|
||||||
|
//! \code
|
||||||
|
//! find_package(PIP REQUIRED)
|
||||||
|
//! target_link_libraries([target] PIP::IOUtils)
|
||||||
|
//! \endcode
|
||||||
|
//!
|
||||||
|
//! \~english \par Common
|
||||||
|
//! \~russian \par Общее
|
||||||
|
//!
|
||||||
|
//! \~english
|
||||||
|
//! These files provides complex transport over ethernet
|
||||||
|
//!
|
||||||
|
//! \~russian
|
||||||
|
//! Эти файлы обеспечивают сложный транспорт поверх ethernet
|
||||||
|
//!
|
||||||
|
//! \~\authors
|
||||||
|
//! \~english
|
||||||
|
//! Ivan Pelipenko peri4ko@yandex.ru;
|
||||||
|
//! Andrey Bychkov work.a.b@yandex.ru;
|
||||||
|
//! \~russian
|
||||||
|
//! Иван Пелипенко peri4ko@yandex.ru;
|
||||||
|
//! Андрей Бычков work.a.b@yandex.ru;
|
||||||
|
//!
|
||||||
|
|
||||||
#ifndef PIIOUTILSMODULE_H
|
#ifndef PIIOUTILSMODULE_H
|
||||||
#define PIIOUTILSMODULE_H
|
#define PIIOUTILSMODULE_H
|
||||||
|
|
||||||
|
|
||||||
#include "pibasetransfer.h"
|
#include "pibasetransfer.h"
|
||||||
#include "piconnection.h"
|
#include "piconnection.h"
|
||||||
#include "pidatatransfer.h"
|
#include "pidatatransfer.h"
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file pipacketextractor.h
|
/*! \file pipacketextractor.h
|
||||||
* \brief Packets extractor
|
* \ingroup IO
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Packets extractor
|
||||||
|
* \~russian Извлекатель пакетов
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Packets extractor
|
Packets extractor
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file piparsehelper.h
|
/*! \file piparsehelper.h
|
||||||
* \brief Helper class to automate structs receive
|
* \ingroup IO
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Helper class to automate structs receive
|
||||||
|
* \~russian Класс для автоматизации приема структур
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Helper class to automate structs receive
|
Helper class to automate structs receive
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file pistreampacker.h
|
/*! \file pistreampacker.h
|
||||||
* \brief Simple packet wrap aroud any PIIODevice
|
* \ingroup IO-Utils
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Simple packet wrap aroud any PIIODevice
|
||||||
|
* \~russian Простая фрагментация пакетов, использует любой PIIODevice
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Simple packet wrap aroud any PIIODevice
|
Simple packet wrap aroud any PIIODevice
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file piluaprogram.h
|
/*! \file piluaprogram.h
|
||||||
* \brief Lua Program
|
* \ingroup Lua
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Lua Program
|
||||||
|
* \~russian Программа Lua
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
PILuaProgram
|
PILuaProgram
|
||||||
|
|||||||
@@ -1,8 +1,9 @@
|
|||||||
/*! \file pip_lua.h
|
/*! \file pip_lua.h
|
||||||
* \brief PIP Lua bindings
|
* \ingroup Lua
|
||||||
*
|
* \~\brief
|
||||||
* This file declare conversions for PIP types via LuaBridge
|
* \~english Conversions between PIP types and LuaBridge
|
||||||
*/
|
* \~russian Преобразования между типами PIP и LuaBridge
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
PIP Lua bindings
|
PIP Lua bindings
|
||||||
@@ -21,6 +22,38 @@
|
|||||||
You should have received a copy of the GNU Lesser General Public License
|
You should have received a copy of the GNU Lesser General Public License
|
||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
//! \defgroup Lua
|
||||||
|
//! \~\brief
|
||||||
|
//! \~english Lua programs support
|
||||||
|
//! \~russian Поддержка программ Lua
|
||||||
|
//!
|
||||||
|
//! \~\details
|
||||||
|
//! \~english \section cmake_module Building with CMake
|
||||||
|
//! \~russian \section cmake_module Сборка с использованием CMake
|
||||||
|
//!
|
||||||
|
//! \code
|
||||||
|
//! find_package(PIP REQUIRED)
|
||||||
|
//! target_link_libraries([target] PIP::Lua)
|
||||||
|
//! \endcode
|
||||||
|
//!
|
||||||
|
//! \~english \par Common
|
||||||
|
//! \~russian \par Общее
|
||||||
|
//!
|
||||||
|
//! \~english
|
||||||
|
//! These files provides execute Lua programs inside C++ code.
|
||||||
|
//!
|
||||||
|
//! \~russian
|
||||||
|
//! Эти файлы обеспечивают возможность выполнения программ Lua внутри C++ кода.
|
||||||
|
//!
|
||||||
|
//! \~\authors
|
||||||
|
//! \~english
|
||||||
|
//! Ivan Pelipenko peri4ko@yandex.ru;
|
||||||
|
//! Andrey Bychkov work.a.b@yandex.ru;
|
||||||
|
//! \~russian
|
||||||
|
//! Иван Пелипенко peri4ko@yandex.ru;
|
||||||
|
//! Андрей Бычков work.a.b@yandex.ru;
|
||||||
|
//!
|
||||||
|
|
||||||
#ifndef PIP_LUA_H
|
#ifndef PIP_LUA_H
|
||||||
#define PIP_LUA_H
|
#define PIP_LUA_H
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file picrc.h
|
/*! \file picrc.h
|
||||||
* \brief CRC checksum calculator
|
* \ingroup Math
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english CRC checksum calculation
|
||||||
|
* \~russian Вычисление CRC контрольной суммы
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
CRC checksum calculator
|
CRC checksum calculator
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file pievaluator.h
|
/*! \file pievaluator.h
|
||||||
* \brief Mathematic expressions calculator
|
* \ingroup Math
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Mathematic expressions calculator
|
||||||
|
* \~russian Вычислитель математических выражений
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Evaluator designed for stream calculations
|
Evaluator designed for stream calculations
|
||||||
|
|||||||
@@ -1,6 +1,10 @@
|
|||||||
/*! \file pifft.h
|
/*! \file pifft.h
|
||||||
* \brief Class for FFT, IFFT and Hilbert transformations
|
* \ingroup Math
|
||||||
*/
|
* \ingroup FFTW
|
||||||
|
* \~\brief
|
||||||
|
* \~english FFT, IFFT and Hilbert transformations
|
||||||
|
* \~russian БПФ, ОБПФ и преобразования Гильберта
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Class for FFT, IFFT and Hilbert transformations
|
Class for FFT, IFFT and Hilbert transformations
|
||||||
@@ -19,6 +23,37 @@
|
|||||||
You should have received a copy of the GNU Lesser General Public License
|
You should have received a copy of the GNU Lesser General Public License
|
||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
//! \defgroup FFTW
|
||||||
|
//! \~\brief
|
||||||
|
//! \~english Optimized FFT support via libfftw3
|
||||||
|
//! \~russian Оптимизированный БПФ с помощью libfftw3
|
||||||
|
//!
|
||||||
|
//! \~\details
|
||||||
|
//! \~english \section cmake_module Building with CMake
|
||||||
|
//! \~russian \section cmake_module Сборка с использованием CMake
|
||||||
|
//!
|
||||||
|
//! \code
|
||||||
|
//! find_package(PIP REQUIRED)
|
||||||
|
//! target_link_libraries([target] PIP::FFTW)
|
||||||
|
//! \endcode
|
||||||
|
//!
|
||||||
|
//! \~english \par Common
|
||||||
|
//! \~russian \par Общее
|
||||||
|
//!
|
||||||
|
//! \~english
|
||||||
|
//! These files provides FFT using [libfftw3](https://fftw.org/)
|
||||||
|
//!
|
||||||
|
//! \~russian
|
||||||
|
//! Эти файлы обеспечивают БПФ с использованием [libfftw3](https://fftw.org/)
|
||||||
|
//!
|
||||||
|
//! \~\authors
|
||||||
|
//! \~english
|
||||||
|
//! Ivan Pelipenko peri4ko@yandex.ru;
|
||||||
|
//! Andrey Bychkov work.a.b@yandex.ru;
|
||||||
|
//! \~russian
|
||||||
|
//! Иван Пелипенко peri4ko@yandex.ru;
|
||||||
|
//! Андрей Бычков work.a.b@yandex.ru;
|
||||||
|
//!
|
||||||
|
|
||||||
#ifndef PIFFT_H
|
#ifndef PIFFT_H
|
||||||
#define PIFFT_H
|
#define PIFFT_H
|
||||||
|
|||||||
@@ -3,13 +3,6 @@
|
|||||||
* \brief
|
* \brief
|
||||||
* \~english Two-dimensional line class
|
* \~english Two-dimensional line class
|
||||||
* \~russian Класс отрезка двумерной линии
|
* \~russian Класс отрезка двумерной линии
|
||||||
* * \~\authors
|
|
||||||
* \~english
|
|
||||||
* Ivan Pelipenko peri4ko@yandex.ru;
|
|
||||||
* Andrey Bychkov work.a.b@yandex.ru;
|
|
||||||
* \~russian
|
|
||||||
* Иван Пелипенко peri4ko@yandex.ru;
|
|
||||||
* Андрей Бычков work.a.b@yandex.ru;
|
|
||||||
*/
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
|
|||||||
@@ -1,15 +1,8 @@
|
|||||||
/*! \file pimathbase.h
|
/*! \file pimathbase.h
|
||||||
* \defgroup Math
|
* \ingroup Math
|
||||||
* \brief
|
* \~\brief
|
||||||
* \~english Basic mathematical functions and defines
|
* \~english Basic mathematical functions and defines
|
||||||
* \~russian Базовые математические функции и дефайны
|
* \~russian Базовые математические функции и дефайны
|
||||||
* \~\authors
|
|
||||||
* \~english
|
|
||||||
* Ivan Pelipenko peri4ko@yandex.ru;
|
|
||||||
* Andrey Bychkov work.a.b@yandex.ru;
|
|
||||||
* \~russian
|
|
||||||
* Иван Пелипенко peri4ko@yandex.ru;
|
|
||||||
* Андрей Бычков work.a.b@yandex.ru;
|
|
||||||
*/
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file pimathcomplex.h
|
/*! \file pimathcomplex.h
|
||||||
* \brief PIP math complex
|
* \ingroup Math
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Complex numbers
|
||||||
|
* \~russian Комплексные числа
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
PIP math complex
|
PIP math complex
|
||||||
|
|||||||
@@ -1,8 +1,9 @@
|
|||||||
/*! \file pimathmatrix.h
|
/*! \file pimathmatrix.h
|
||||||
* \brief PIMathMatrix
|
* \ingroup Math
|
||||||
*
|
* \~\brief
|
||||||
* This file declare math matrix class, which performs various matrix operations
|
* \~english Math matrix
|
||||||
*/
|
* \~russian Математическая матрица
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
PIMathMatrix
|
PIMathMatrix
|
||||||
|
|||||||
@@ -16,6 +16,37 @@
|
|||||||
You should have received a copy of the GNU Lesser General Public License
|
You should have received a copy of the GNU Lesser General Public License
|
||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
//! \defgroup Math
|
||||||
|
//! \~\brief
|
||||||
|
//! \~english Basic mathematical functions and defines
|
||||||
|
//! \~russian Базовые математические функции и дефайны
|
||||||
|
//!
|
||||||
|
//! \~\details
|
||||||
|
//! \~english \section cmake_module Building with CMake
|
||||||
|
//! \~russian \section cmake_module Сборка с использованием CMake
|
||||||
|
//!
|
||||||
|
//! \code
|
||||||
|
//! find_package(PIP REQUIRED)
|
||||||
|
//! target_link_libraries([target] PIP)
|
||||||
|
//! \endcode
|
||||||
|
//!
|
||||||
|
//! \~english \par Common
|
||||||
|
//! \~russian \par Общее
|
||||||
|
//!
|
||||||
|
//! \~english
|
||||||
|
//! These files provides vectors, matrices, complex numbers, quaternions, FFT and geometry classes
|
||||||
|
//!
|
||||||
|
//! \~russian
|
||||||
|
//! Эти файлы обеспечивают вектора, матрицы, комплексные числа, кватернионы, БПФ и классы геометрических фигур
|
||||||
|
//!
|
||||||
|
//! \~\authors
|
||||||
|
//! \~english
|
||||||
|
//! Ivan Pelipenko peri4ko@yandex.ru;
|
||||||
|
//! Andrey Bychkov work.a.b@yandex.ru;
|
||||||
|
//! \~russian
|
||||||
|
//! Иван Пелипенко peri4ko@yandex.ru;
|
||||||
|
//! Андрей Бычков work.a.b@yandex.ru;
|
||||||
|
//!
|
||||||
|
|
||||||
#ifndef PIMATHMODULE_H
|
#ifndef PIMATHMODULE_H
|
||||||
#define PIMATHMODULE_H
|
#define PIMATHMODULE_H
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file pimathvector.h
|
/*! \file pimathvector.h
|
||||||
* \brief PIMathVector
|
* \ingroup Math
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Math vector
|
||||||
|
* \~russian Математический вектор
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
PIMathVector
|
PIMathVector
|
||||||
|
|||||||
@@ -3,13 +3,6 @@
|
|||||||
//! \brief
|
//! \brief
|
||||||
//! \~english Two-dimensional point class
|
//! \~english Two-dimensional point class
|
||||||
//! \~russian Класс двумерной точки
|
//! \~russian Класс двумерной точки
|
||||||
//! \~\authors
|
|
||||||
//! \~english
|
|
||||||
//! Ivan Pelipenko peri4ko@yandex.ru;
|
|
||||||
//! Andrey Bychkov work.a.b@yandex.ru;
|
|
||||||
//! \~russian
|
|
||||||
//! Иван Пелипенко peri4ko@yandex.ru;
|
|
||||||
//! Андрей Бычков work.a.b@yandex.ru;
|
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Two-dimensional point class
|
Two-dimensional point class
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file piquaternion.h
|
/*! \file piquaternion.h
|
||||||
* \brief Class for quaternions
|
* \ingroup Math
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Quaternion
|
||||||
|
* \~russian Кватернион
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Class for quaternions
|
Class for quaternions
|
||||||
|
|||||||
@@ -3,13 +3,6 @@
|
|||||||
//! \brief
|
//! \brief
|
||||||
//! \~english Rect class
|
//! \~english Rect class
|
||||||
//! \~russian Класс прямоугольника
|
//! \~russian Класс прямоугольника
|
||||||
//! \~\authors
|
|
||||||
//! \~english
|
|
||||||
//! Ivan Pelipenko peri4ko@yandex.ru;
|
|
||||||
//! Andrey Bychkov work.a.b@yandex.ru;
|
|
||||||
//! \~russian
|
|
||||||
//! Иван Пелипенко peri4ko@yandex.ru;
|
|
||||||
//! Андрей Бычков work.a.b@yandex.ru;
|
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Rect class
|
Rect class
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file pistatistic.h
|
/*! \file pistatistic.h
|
||||||
* \brief Class for calculating math statistic in values array
|
* \ingroup Math
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Calculating math statistic of values array
|
||||||
|
* \~russian Вычисление математической статистики у массива чисел
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Class for calculacing math statistic in values array
|
Class for calculacing math statistic in values array
|
||||||
|
|||||||
@@ -1,3 +1,9 @@
|
|||||||
|
/*! \file piopencl.h
|
||||||
|
* \ingroup OpenCL
|
||||||
|
* \~\brief
|
||||||
|
* \~english OpenCL classes
|
||||||
|
* \~russian Классы OpenCL
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
OpenCL wrappers
|
OpenCL wrappers
|
||||||
@@ -16,6 +22,37 @@
|
|||||||
You should have received a copy of the GNU Lesser General Public License
|
You should have received a copy of the GNU Lesser General Public License
|
||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
//! \defgroup OpenCL
|
||||||
|
//! \~\brief
|
||||||
|
//! \~english OpenCL support
|
||||||
|
//! \~russian Поддержка OpenCL
|
||||||
|
//!
|
||||||
|
//! \~\details
|
||||||
|
//! \~english \section cmake_module Building with CMake
|
||||||
|
//! \~russian \section cmake_module Сборка с использованием CMake
|
||||||
|
//!
|
||||||
|
//! \code
|
||||||
|
//! find_package(PIP REQUIRED)
|
||||||
|
//! target_link_libraries([target] PIP::OpenCL)
|
||||||
|
//! \endcode
|
||||||
|
//!
|
||||||
|
//! \~english \par Common
|
||||||
|
//! \~russian \par Общее
|
||||||
|
//!
|
||||||
|
//! \~english
|
||||||
|
//! These files provides OpenCL classes wrap.
|
||||||
|
//!
|
||||||
|
//! \~russian
|
||||||
|
//! Эти файлы обеспечивают классовую обвязку OpenCL.
|
||||||
|
//!
|
||||||
|
//! \~\authors
|
||||||
|
//! \~english
|
||||||
|
//! Ivan Pelipenko peri4ko@yandex.ru;
|
||||||
|
//! Andrey Bychkov work.a.b@yandex.ru;
|
||||||
|
//! \~russian
|
||||||
|
//! Иван Пелипенко peri4ko@yandex.ru;
|
||||||
|
//! Андрей Бычков work.a.b@yandex.ru;
|
||||||
|
//!
|
||||||
|
|
||||||
#ifndef PIOPENCL_H
|
#ifndef PIOPENCL_H
|
||||||
#define PIOPENCL_H
|
#define PIOPENCL_H
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file piresources.h
|
/*! \file piresources.h
|
||||||
* \brief Resources subsystem
|
* \ingroup Resources
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Resources subsystem
|
||||||
|
* \~russian Подсистема ресурсов
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Resources subsystem
|
Resources subsystem
|
||||||
@@ -19,6 +22,37 @@
|
|||||||
You should have received a copy of the GNU Lesser General Public License
|
You should have received a copy of the GNU Lesser General Public License
|
||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
//! \defgroup Resources
|
||||||
|
//! \~\brief
|
||||||
|
//! \~english Resources subsystem
|
||||||
|
//! \~russian Подсистема ресурсов
|
||||||
|
//!
|
||||||
|
//! \~\details
|
||||||
|
//! \~english \section cmake_module Building with CMake
|
||||||
|
//! \~russian \section cmake_module Сборка с использованием CMake
|
||||||
|
//!
|
||||||
|
//! \code
|
||||||
|
//! find_package(PIP REQUIRED)
|
||||||
|
//! target_link_libraries([target] PIP)
|
||||||
|
//! \endcode
|
||||||
|
//!
|
||||||
|
//! \~english \par Common
|
||||||
|
//! \~russian \par Общее
|
||||||
|
//!
|
||||||
|
//! \~english
|
||||||
|
//! These files provides support of compiled-in files
|
||||||
|
//!
|
||||||
|
//! \~russian
|
||||||
|
//! Эти файлы обеспечивают поддержку вкомпиленных файлов
|
||||||
|
//!
|
||||||
|
//! \~\authors
|
||||||
|
//! \~english
|
||||||
|
//! Ivan Pelipenko peri4ko@yandex.ru;
|
||||||
|
//! Andrey Bychkov work.a.b@yandex.ru;
|
||||||
|
//! \~russian
|
||||||
|
//! Иван Пелипенко peri4ko@yandex.ru;
|
||||||
|
//! Андрей Бычков work.a.b@yandex.ru;
|
||||||
|
//!
|
||||||
|
|
||||||
#ifndef PIRESOURCES_H
|
#ifndef PIRESOURCES_H
|
||||||
#define PIRESOURCES_H
|
#define PIRESOURCES_H
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file pilibrary.h
|
/*! \file pilibrary.h
|
||||||
* \brief Dynamic library
|
* \ingroup System
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Run-time library
|
||||||
|
* \~russian Run-time библиотека
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Dynamic library
|
Dynamic library
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file piplugin.h
|
/*! \file piplugin.h
|
||||||
* \brief Plugin helpers
|
* \ingroup System
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Plugin control
|
||||||
|
* \~russian Управление плагинами
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Plugin helpers
|
Plugin helpers
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file piprocess.h
|
/*! \file piprocess.h
|
||||||
* \brief Process
|
* \ingroup System
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english External process
|
||||||
|
* \~russian Внешний процесс
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Process
|
Process
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file pisignals.h
|
/*! \file pisignals.h
|
||||||
* \brief System signals
|
* \ingroup System
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english System signals
|
||||||
|
* \~russian Сигналы системы
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Signals
|
Signals
|
||||||
|
|||||||
@@ -1,3 +1,9 @@
|
|||||||
|
/*! \file pisysteminfo.h
|
||||||
|
* \ingroup System
|
||||||
|
* \~\brief
|
||||||
|
* \~english System information
|
||||||
|
* \~russian Информация о системе
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
System information
|
System information
|
||||||
|
|||||||
@@ -16,6 +16,39 @@
|
|||||||
You should have received a copy of the GNU Lesser General Public License
|
You should have received a copy of the GNU Lesser General Public License
|
||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
//! \defgroup System
|
||||||
|
//! \~\brief
|
||||||
|
//! \~english System information and external executables and libraries support.
|
||||||
|
//! \~russian Информация о системе и поддержка внешних процессов и библиотек.
|
||||||
|
//!
|
||||||
|
//! \~\details
|
||||||
|
//! \~english \section cmake_module Building with CMake
|
||||||
|
//! \~russian \section cmake_module Сборка с использованием CMake
|
||||||
|
//!
|
||||||
|
//! \code
|
||||||
|
//! find_package(PIP REQUIRED)
|
||||||
|
//! target_link_libraries([target] PIP)
|
||||||
|
//! \endcode
|
||||||
|
//!
|
||||||
|
//! \~english \par Common
|
||||||
|
//! \~russian \par Общее
|
||||||
|
//!
|
||||||
|
//! \~english
|
||||||
|
//! These files provides system information, resource monitoring, run-time libraries and
|
||||||
|
//! control of external executables.
|
||||||
|
//!
|
||||||
|
//! \~russian
|
||||||
|
//! Эти файлы обеспечивают информацию о системе, мониторинг ресурсов, run-time библиотеки
|
||||||
|
//! и управление внешними исполняемыми файлами.
|
||||||
|
//!
|
||||||
|
//! \~\authors
|
||||||
|
//! \~english
|
||||||
|
//! Ivan Pelipenko peri4ko@yandex.ru;
|
||||||
|
//! Andrey Bychkov work.a.b@yandex.ru;
|
||||||
|
//! \~russian
|
||||||
|
//! Иван Пелипенко peri4ko@yandex.ru;
|
||||||
|
//! Андрей Бычков work.a.b@yandex.ru;
|
||||||
|
//!
|
||||||
|
|
||||||
#ifndef PISYSTEMMODULE_H
|
#ifndef PISYSTEMMODULE_H
|
||||||
#define PISYSTEMMODULE_H
|
#define PISYSTEMMODULE_H
|
||||||
|
|||||||
@@ -1,3 +1,9 @@
|
|||||||
|
/*! \file pisystemmonitor.h
|
||||||
|
* \ingroup System
|
||||||
|
* \~\brief
|
||||||
|
* \~english System resources monitoring
|
||||||
|
* \~russian Мониторинг ресурсов системы
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Process resource monitor
|
Process resource monitor
|
||||||
|
|||||||
@@ -1,3 +1,9 @@
|
|||||||
|
/*! \file piblockingqueue.h
|
||||||
|
* \ingroup Thread
|
||||||
|
* \~\brief
|
||||||
|
* \~english Queue with blocking
|
||||||
|
* \~russian Блокирующая очередь
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
|
|
||||||
|
|||||||
@@ -1,3 +1,9 @@
|
|||||||
|
/*! \file piconditionvar.h
|
||||||
|
* \ingroup Thread
|
||||||
|
* \~\brief
|
||||||
|
* \~english Conditional variable
|
||||||
|
* \~russian Conditional variable
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file pigrabberbase.h
|
/*! \file pigrabberbase.h
|
||||||
* \brief Abstract class for create grabbers
|
* \ingroup Thread
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Abstract class for create grabbers
|
||||||
|
* \~russian Базовый класс для создания грабберов
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Abstract class for create grabbers
|
Abstract class for create grabbers
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file pimutex.h
|
/*! \file pimutex.h
|
||||||
* \brief PIMutex, PIMutexLocker
|
* \ingroup Thread
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Basic interthread lock
|
||||||
|
* \~russian Базовая межпоточная блокировка
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
PIMutex, PIMutexLocker
|
PIMutex, PIMutexLocker
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file pipipelinethread.h
|
/*! \file pipipelinethread.h
|
||||||
* \brief Class for create multihread pipeline
|
* \ingroup Thread
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Class for create multihread pipeline
|
||||||
|
* \~russian Класс для создания многопоточного конвейера
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Class for create multihread pipeline
|
Class for create multihread pipeline
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file pispinlock.h
|
/*! \file pispinlock.h
|
||||||
* \brief PISpinlock
|
* \ingroup Thread
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Fast and full-load lock
|
||||||
|
* \~russian Быстрая блокировка с полной нагрузкой
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
PISpinlock
|
PISpinlock
|
||||||
|
|||||||
@@ -1,8 +1,9 @@
|
|||||||
/*! \file pithread.h
|
/*! \file pithread.h
|
||||||
* \brief Thread
|
* \ingroup Thread
|
||||||
*
|
* \~\brief
|
||||||
* This file declare thread class and some wait functions
|
* \~english Thread class
|
||||||
*/
|
* \~russian Класс потока
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Thread
|
Thread
|
||||||
|
|||||||
@@ -16,6 +16,37 @@
|
|||||||
You should have received a copy of the GNU Lesser General Public License
|
You should have received a copy of the GNU Lesser General Public License
|
||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
//! \defgroup Thread
|
||||||
|
//! \~\brief
|
||||||
|
//! \~english Multithreading support.
|
||||||
|
//! \~russian Поддержка многопоточности.
|
||||||
|
//!
|
||||||
|
//! \~\details
|
||||||
|
//! \~english \section cmake_module Building with CMake
|
||||||
|
//! \~russian \section cmake_module Сборка с использованием CMake
|
||||||
|
//!
|
||||||
|
//! \code
|
||||||
|
//! find_package(PIP REQUIRED)
|
||||||
|
//! target_link_libraries([target] PIP)
|
||||||
|
//! \endcode
|
||||||
|
//!
|
||||||
|
//! \~english \par Common
|
||||||
|
//! \~russian \par Общее
|
||||||
|
//!
|
||||||
|
//! \~english
|
||||||
|
//! These files provides thread, timer, blocking and several complex multithreading techniques
|
||||||
|
//!
|
||||||
|
//! \~russian
|
||||||
|
//! Эти файлы обеспечивают потоки, таймера, блокировки и несколько сложных многопоточных техник
|
||||||
|
//!
|
||||||
|
//! \~\authors
|
||||||
|
//! \~english
|
||||||
|
//! Ivan Pelipenko peri4ko@yandex.ru;
|
||||||
|
//! Andrey Bychkov work.a.b@yandex.ru;
|
||||||
|
//! \~russian
|
||||||
|
//! Иван Пелипенко peri4ko@yandex.ru;
|
||||||
|
//! Андрей Бычков work.a.b@yandex.ru;
|
||||||
|
//!
|
||||||
|
|
||||||
#ifndef PITHREADMODULE_H
|
#ifndef PITHREADMODULE_H
|
||||||
#define PITHREADMODULE_H
|
#define PITHREADMODULE_H
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file pithreadnotifier.h
|
/*! \file pithreadnotifier.h
|
||||||
* \brief Class for simply notify and wait in different threads
|
* \ingroup Thread
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Class for simple notify and wait in different threads
|
||||||
|
* \~russian Класс для простого уведомления и ожидания в различных потоках
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Class for simply notify and wait in different threads
|
Class for simply notify and wait in different threads
|
||||||
|
|||||||
@@ -1,8 +1,9 @@
|
|||||||
/*! \file pithreadpoolloop.h
|
/*! \file pithreadpoolloop.h
|
||||||
* \brief Thread pool loop
|
* \ingroup Thread
|
||||||
*
|
* \~\brief
|
||||||
* This file declare thread class and some wait functions
|
* \~english Thread pool loop
|
||||||
*/
|
* \~russian Пул потоков
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Thread pool loop
|
Thread pool loop
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
/*! \file pitimer.h
|
/*! \file pitimer.h
|
||||||
* \brief Timer
|
* \ingroup Thread
|
||||||
*/
|
* \~\brief
|
||||||
|
* \~english Timer
|
||||||
|
* \~russian Таймер
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
PIP - Platform Independent Primitives
|
PIP - Platform Independent Primitives
|
||||||
Timer
|
Timer
|
||||||
|
|||||||
Reference in New Issue
Block a user