This commit is contained in:
2022-11-25 21:35:39 +03:00
parent a2256a3872
commit dc6fbbf7ec
37 changed files with 1498 additions and 1321 deletions

View File

@@ -1,5 +1,5 @@
/*! \file pibinarystream.h
* \ingroup Core
* \ingroup Serialization
* \~\brief
* \~english Binary serialization interface
* \~russian Интерфейс бинарной сериализации
@@ -42,7 +42,7 @@
template<typename P> inline PIBinaryStream<P> & operator >>(PIBinaryStream<P> & s, T & v)
//! \ingroup Core
//! \ingroup Serialization
//! \~\brief
//! \~english Binary serialization interface.
//! \~russian Интерфейс бинарной сериализации.

View File

@@ -1,5 +1,5 @@
/*! \file pichunkstream.h
* \ingroup Core
* \ingroup Serialization
* \~\brief
* \~english Binary markup de/serializator stream
* \~russian Бинарный поток для де/сериализации с разметкой
@@ -29,7 +29,7 @@
#include "pibytearray.h"
//! \ingroup Core
//! \ingroup Serialization
//! \~\brief
//! \~english Class for binary de/serialization.
//! \~russian Класс для бинарной де/сериализации.

View File

@@ -1,5 +1,5 @@
/*! \file pijson.h
* \ingroup Core
* \ingroup Serialization
* \brief
* \~english JSON class
* \~russian Класс JSON
@@ -29,7 +29,7 @@
#include "pivariant.h"
//! \ingroup Core
//! \ingroup Serialization
//! \~\brief
//! \~english JSON class.
//! \~russian Класс JSON.

View File

@@ -0,0 +1,58 @@
/*
PIP - Platform Independent Primitives
Module includes
Ivan Pelipenko peri4ko@yandex.ru, Andrey Bychkov work.a.b@yandex.ru
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Lesser General Public License for more details.
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/>.
*/
//! \defgroup Serialization Serialization
//! \~\brief
//! \~english Serialization.
//! \~russian Сериализация.
//!
//! \~\details
//! \~english \section cmake_module_Serialization Building with CMake
//! \~russian \section cmake_module_Serialization Сборка с использованием CMake
//!
//! \~\code
//! find_package(PIP REQUIRED)
//! target_link_libraries([target] PIP)
//! \endcode
//!
//! \~english \par Common
//! \~russian \par Общее
//!
//! \~english
//!
//!
//! \~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 PISERIALIZATIONMODULE_H
#define PISERIALIZATIONMODULE_H
#include "pibinarystream.h"
#include "pichunkstream.h"
#include "pijson.h"
#endif // PISERIALIZATIONMODULE_H

View File

@@ -1,5 +1,5 @@
/*! \file pichar.h
* \ingroup Core
* \ingroup Text
* \~\brief
* \~english Single string character
* \~russian Один символ строки
@@ -32,7 +32,7 @@ extern PIP_EXPORT char * __syslocname__;
extern PIP_EXPORT char * __sysoemname__;
extern PIP_EXPORT char * __utf8name__;
//! \ingroup Core
//! \ingroup Text
//! \~\brief
//! \~english %PIChar represents a single character.
//! \~russian %PIChar представляет собой один символ строки.

View File

@@ -1,5 +1,5 @@
/*! \file piconstchars.h
* \ingroup Core
* \ingroup Text
* \brief
* \~english C-String class
* \~russian Класс C-строки
@@ -29,7 +29,7 @@
#include "picout.h"
//! \ingroup Core
//! \ingroup Text
//! \~\brief
//! \~english C-String class.
//! \~russian Класс C-строки.

View File

@@ -1,5 +1,5 @@
/*! \file pistring.h
* \ingroup Core
* \ingroup Text
* \brief
* \~english String class
* \~russian Класс строки
@@ -34,7 +34,7 @@
class PIStringList;
//! \ingroup Core
//! \ingroup Text
//! \~\brief
//! \~english String class.
//! \~russian Класс строки.

View File

@@ -1,5 +1,5 @@
/*! \file pistring_std.h
* \ingroup Core
* \ingroup Text
* \brief
* \~english STD convertions for PIString
* \~russian Преобразования в/из STD для строки

View File

@@ -1,5 +1,5 @@
/*! \file pistringlist.h
* \ingroup Core
* \ingroup Text
* \~\brief
* \~english Based on \a PIDeque<PIString> strings list
* \~russian Основанный на \a PIDeque<PIString> массив строк
@@ -29,7 +29,7 @@
#include "pistring.h"
//! \ingroup Core
//! \ingroup Text
//! \~\brief
//! \~english Based on \a PIDeque<PIString> strings list.
//! \~russian Основанный на \a PIDeque<PIString> массив строк.

View File

@@ -0,0 +1,58 @@
/*
PIP - Platform Independent Primitives
Module includes
Ivan Pelipenko peri4ko@yandex.ru, Andrey Bychkov work.a.b@yandex.ru
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Lesser General Public License for more details.
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/>.
*/
//! \defgroup Text Text
//! \~\brief
//! \~english String classes.
//! \~russian Классы строк.
//!
//! \~\details
//! \~english \section cmake_module_Text Building with CMake
//! \~russian \section cmake_module_Text Сборка с использованием CMake
//!
//! \~\code
//! find_package(PIP REQUIRED)
//! target_link_libraries([target] PIP)
//! \endcode
//!
//! \~english \par Common
//! \~russian \par Общее
//!
//! \~english
//!
//!
//! \~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 PITEXTMODULE_H
#define PITEXTMODULE_H
#include "pistringlist.h"
#include "piconstchars.h"
#include "pitextstream.h"
#endif // PITEXTMODULE_H

View File

@@ -1,5 +1,5 @@
/*! \file pitextstream.h
* \ingroup Core
* \ingroup Text
* \~\brief
* \~english Text serialization functionality over PIBinaryStream
* \~russian Функциональность текстовой сериализации поверх PIBinaryStream
@@ -29,7 +29,7 @@
#include "pistring.h"
//! \ingroup Core
//! \ingroup Text
//! \~\brief
//! \~english Text serialization functionality over PIBinaryStream.
//! \~russian Функциональность текстовой сериализации поверх PIBinaryStream.

View File

@@ -28,7 +28,7 @@
#include "pivector.h"
//! \ingroup Core
//! \ingroup Types
//! \~\brief
//! \~english The %PIBitArray class provides an space-efficient array of bits.
//! \~russian Класс %PIBitArray представляет собой компактный массив битов.

View File

@@ -1,5 +1,5 @@
/*! \file pibytearray.h
* \ingroup Core
* \ingroup Types
* \~\brief
* \~english Byte array
* \~russian Байтовый массив
@@ -34,7 +34,7 @@ class PIString;
class PIByteArray;
//! \ingroup Core
//! \ingroup Types
//! \~\brief
//! \~english The %PIByteArray class provides an array of bytes.
//! \~russian Класс %PIByteArray представляет собой массив байтов.

View File

@@ -33,7 +33,7 @@
# include <sys/time.h>
#endif
//! \addtogroup Core
//! \addtogroup Types
//! \{
//!
//! \~\class PITime pidatetime.h

View File

@@ -1,5 +1,5 @@
/*! \file pidatetime.h
* \ingroup Core
* \ingroup Types
* \~\brief
* \~english Time and date structs
* \~russian Типы времени и даты
@@ -30,7 +30,7 @@
#include "pisystemtime.h"
//! \ingroup Core
//! \ingroup Types
//! \~\brief
//! \~english Calendar time.
//! \~russian Календарное время.
@@ -106,7 +106,7 @@ PIP_EXPORT PICout operator <<(PICout s, const PITime & v);
//! \ingroup Core
//! \ingroup Types
//! \~\brief
//! \~english Calendar date.
//! \~russian Календарная дата.
@@ -170,7 +170,7 @@ PIP_EXPORT PICout operator <<(PICout s, const PIDate & v);
//! \ingroup Core
//! \ingroup Types
//! \~\brief
//! \~english Calendar date and time.
//! \~russian Календарное дата и время.

View File

@@ -1,5 +1,5 @@
/*! \file piflags.h
* \ingroup Core
* \ingroup Types
* \~\brief
* \~english General flags class
* \~russian Универсальные флаги
@@ -28,7 +28,7 @@
#include "pip_export.h"
//! \addtogroup Core
//! \addtogroup Types
//! \{
//! \~\class PIFlags piflags.h
//! \~\brief

View File

@@ -1,5 +1,5 @@
/*! \file pipropertystorage.h
* \ingroup Core
* \ingroup Types
* \~\brief
* \~english Properties array
* \~russian Массив свойств
@@ -29,7 +29,7 @@
#include "pivariant.h"
//! \ingroup Core
//! \ingroup Types
//! \~\brief
//! \~english This class provides key-value properties storage.
//! \~russian Этот класс предоставляет ключ-значение хранение свойств.
@@ -40,7 +40,7 @@ public:
//! \~russian Создает пустой %PIPropertyStorage
PIPropertyStorage() {}
//! \ingroup Core
//! \ingroup Types
//! \~\brief
//! \~english PIPropertyStorage element.
//! \~russian Элемент PIPropertyStorage.

View File

@@ -1,5 +1,5 @@
/*! \file pisystemtime.h
* \ingroup Core
* \ingroup Types
* \~\brief
* \~english System time structs and methods
* \~russian Типы и методы системного времени
@@ -30,7 +30,7 @@
#include "pistring.h"
//! \ingroup Core
//! \ingroup Types
//! \~\brief
//! \~english System time with nanosecond precision.
//! \~russian Системное время с точностью до наносекунд.
@@ -191,7 +191,7 @@ inline PICout operator <<(PICout s, const PISystemTime & v) {s.space(); s.saveAn
//! \ingroup Core
//! \ingroup Types
//! \~\brief
//! \~english Time measurements.
//! \~russian Измерение времени.

View File

@@ -1,5 +1,5 @@
/*! \file pitime.h
* \ingroup Core
* \ingroup Types
* \~\brief
* \~english System time, time and date
* \~russian Системное время, время и дата
@@ -27,12 +27,12 @@
#include "pidatetime.h"
//! \ingroup Core
//! \ingroup Types
//! \~english Precise sleep for "usecs" microseconds
//! \~russian Точно ожидает "usecs" микросекунд
PIP_EXPORT void piUSleep(int usecs); // on !Windows consider constant "usleep" offset
//! \ingroup Core
//! \ingroup Types
//! \brief
//! \~english Precise sleep for "msecs" milliseconds
//! \~russian Точно ожидает "msecs" миллисекунд
@@ -41,7 +41,7 @@ PIP_EXPORT void piUSleep(int usecs); // on !Windows consider constant "usleep" o
//! \~russian Этот метод вызывает \a piUSleep (msecs * 1000)
inline void piMSleep(double msecs) {piUSleep(int(msecs * 1000.));} // on !Windows consider constant "usleep" offset
//! \ingroup Core
//! \ingroup Types
//! \brief
//! \~english Precise sleep for "secs" seconds
//! \~russian Точно ожидает "secs" секунд
@@ -50,7 +50,7 @@ inline void piMSleep(double msecs) {piUSleep(int(msecs * 1000.));} // on !Window
//! \~russian Этот метод вызывает \a piUSleep (msecs * 1000000)
inline void piSleep(double secs) {piUSleep(int(secs * 1000000.));} // on !Windows consider constant "usleep" offset
//! \ingroup Core
//! \ingroup Types
//! \~english Shortest available on current system sleep
//! \~russian Наименее возможное для данной системы по длительности ожидание
inline void piMinSleep() {piMSleep(PIP_MIN_MSLEEP);}

View File

@@ -1,5 +1,5 @@
/*! \file pitime_win.h
* \ingroup Core
* \ingroup Types
* \brief
* \~english PITime conversions for Windows
* \~russian Преобразования PITime для Windows

View File

@@ -0,0 +1,61 @@
/*
PIP - Platform Independent Primitives
Module includes
Ivan Pelipenko peri4ko@yandex.ru, Andrey Bychkov work.a.b@yandex.ru
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Lesser General Public License for more details.
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/>.
*/
//! \defgroup Types Types
//! \~\brief
//! \~english Basic types.
//! \~russian Базовые типы.
//!
//! \~\details
//! \~english \section cmake_module_Types Building with CMake
//! \~russian \section cmake_module_Types Сборка с использованием CMake
//!
//! \~\code
//! find_package(PIP REQUIRED)
//! target_link_libraries([target] PIP)
//! \endcode
//!
//! \~english \par Common
//! \~russian \par Общее
//!
//! \~english
//!
//!
//! \~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 PITYPESMODULE_H
#define PITYPESMODULE_H
#include "pibitarray.h"
#include "pibytearray.h"
#include "piflags.h"
#include "pitime.h"
#include "pipropertystorage.h"
#include "pivariantsimple.h"
#endif // PITYPESMODULE_H

View File

@@ -1,5 +1,5 @@
/*! \file pivariant.h
* \ingroup Core
* \ingroup Types
* \brief
* \~english Variant type
* \~russian Вариативный тип
@@ -218,7 +218,7 @@ classname_to __PIVariantFunctions__<classname_from>::castVariant<classname_to>(c
#endif
//! \ingroup Core
//! \ingroup Types
//! \~\brief
//! \~english Variant type.
//! \~russian Вариантный тип.

View File

@@ -1,5 +1,5 @@
/*! \file pivariantsimple.h
* \ingroup Core
* \ingroup Types
* \brief
* \~english Simple variant type
* \~russian Простой вариативный тип
@@ -62,7 +62,7 @@ public:
};
//! \addtogroup Core
//! \addtogroup Types
//! \{
//! \~\class PIVariantSimple pivariantsimple.h
//! \~\brief

View File

@@ -1,5 +1,5 @@
/*! \file pivarianttypes.h
* \ingroup Core
* \ingroup Types
* \brief
* \~english Types for PIVariant
* \~russian Типы для PIVariant
@@ -32,14 +32,14 @@
class PIPropertyStorage;
//! \ingroup Core
//! \ingroup Types
//! \relatesalso PIVariant
//! \~english Namespace contains several types for PIVariant
//! \~russian Пространство имен содержит некоторые типы для PIVariant
namespace PIVariantTypes {
//! \addtogroup Core
//! \addtogroup Types
//! \{
//! \~\struct Enumerator pivarianttypes.h
//! \~\brief
@@ -59,7 +59,7 @@ struct PIP_EXPORT Enumerator {
};
//! \addtogroup Core
//! \addtogroup Types
//! \{
//! \~\struct Enum pivarianttypes.h
//! \~\brief
@@ -165,7 +165,7 @@ struct PIP_EXPORT Enum {
};
//! \addtogroup Core
//! \addtogroup Types
//! \{
//! \~\struct File pivarianttypes.h
//! \~\brief
@@ -198,7 +198,7 @@ struct PIP_EXPORT File {
};
//! \addtogroup Core
//! \addtogroup Types
//! \{
//! \~\struct Dir pivarianttypes.h
//! \~\brief
@@ -223,7 +223,7 @@ struct PIP_EXPORT Dir {
};
//! \addtogroup Core
//! \addtogroup Types
//! \{
//! \~\struct Color pivarianttypes.h
//! \~\brief
@@ -239,7 +239,7 @@ struct PIP_EXPORT Color {
};
//! \addtogroup Core
//! \addtogroup Types
//! \{
//! \~\struct IODevice pivarianttypes.h
//! \~\brief