diff --git a/libs/main/geo/pigeoposition.h b/libs/main/geo/pigeoposition.h index 49da9f92..d1d3bfba 100644 --- a/libs/main/geo/pigeoposition.h +++ b/libs/main/geo/pigeoposition.h @@ -38,11 +38,12 @@ public: //! \~english Coordinate system used by stored components. //! \~russian Система координат, используемая для хранимых компонент. enum CoordinateSystem { - Unknown = 0, /** \~english Unknown coordinate system \~russian Неизвестная система координат */, - Geodetic, /** \~english Geodetic latitude, longitude and height above the ellipsoid \~russian Геодезическая широта, долгота и высота над эллипсоидом */, - Geocentric, /** \~english Geocentric latitude, longitude and radius \~russian Геоцентрическая широта, долгота и радиус */, - Cartesian, /** \~english Earth-centered Earth-fixed Cartesian coordinates \~russian Декартовы координаты ECEF */, - Spherical /** \~english Spherical coordinates as theta, phi and radius \~russian Сферические координаты: тета, фи и радиус */ + Unknown = 0, /** \~english Unknown coordinate system \~russian Неизвестная система координат */ + Geodetic, /** \~english Geodetic latitude, longitude and height above the ellipsoid \~russian Геодезическая широта, долгота и высота + над эллипсоидом */ + Geocentric, /** \~english Geocentric latitude, longitude and radius \~russian Геоцентрическая широта, долгота и радиус */ + Cartesian, /** \~english Earth-centered Earth-fixed Cartesian coordinates \~russian Декартовы координаты ECEF */ + Spherical /** \~english Spherical coordinates as theta, phi and radius \~russian Сферические координаты: тета, фи и радиус */ }; //! \~english One centimeter tolerance in meters. diff --git a/libs/main/opencl/piopencl.h b/libs/main/opencl/piopencl.h index 13347333..6f42652a 100644 --- a/libs/main/opencl/piopencl.h +++ b/libs/main/opencl/piopencl.h @@ -84,50 +84,50 @@ public: //! \~english Address space qualifier of a kernel argument. //! \~russian Квалификатор адресного пространства аргумента ядра. enum AddressQualifier { - AddressGlobal, /** \~english Global memory argument \~russian Аргумент в глобальной памяти */, - AddressLocal, /** \~english Local memory argument \~russian Аргумент в локальной памяти */, - AddressConstant, /** \~english Constant memory argument \~russian Аргумент в константной памяти */, + AddressGlobal, /** \~english Global memory argument \~russian Аргумент в глобальной памяти */ + AddressLocal, /** \~english Local memory argument \~russian Аргумент в локальной памяти */ + AddressConstant, /** \~english Constant memory argument \~russian Аргумент в константной памяти */ AddressPrivate, /** \~english Private argument \~russian Приватный аргумент */ }; //! \~english Access qualifier of an image or memory argument. //! \~russian Квалификатор доступа к аргументу изображения или памяти. enum AccessQualifier { - AccessReadOnly, /** \~english Read-only access \~russian Доступ только для чтения */, - AccessWriteOnly, /** \~english Write-only access \~russian Доступ только для записи */, - AccessReadWrite, /** \~english Read-write access \~russian Доступ для чтения и записи */, + AccessReadOnly, /** \~english Read-only access \~russian Доступ только для чтения */ + AccessWriteOnly, /** \~english Write-only access \~russian Доступ только для записи */ + AccessReadWrite, /** \~english Read-write access \~russian Доступ для чтения и записи */ AccessNone, /** \~english Access qualifier is not specified \~russian Квалификатор доступа не задан */ }; //! \~english Intended data flow direction for buffers. //! \~russian Предполагаемое направление обмена данными для буферов. enum Direction { - Input = 0x01, /** \~english Host-to-device input buffer \~russian Входной буфер host->device */, - Output = 0x02, /** \~english Device-to-host output buffer \~russian Выходной буфер device->host */, + Input = 0x01, /** \~english Host-to-device input buffer \~russian Входной буфер host->device */ + Output = 0x02, /** \~english Device-to-host output buffer \~russian Выходной буфер device->host */ InputOutput = Input | Output /** \~english Bidirectional buffer \~russian Двунаправленный буфер */ }; //! \~english Type qualifier of a kernel argument. //! \~russian Квалификатор типа аргумента ядра. enum TypeQualifier { - TypeConst, /** \~english Constant argument \~russian Константный аргумент */, - TypeRestrict, /** \~english Restricted argument \~russian Аргумент с qualifier `restrict` */, - TypeVolatile, /** \~english Volatile argument \~russian Аргумент с qualifier `volatile` */, + TypeConst, /** \~english Constant argument \~russian Константный аргумент */ + TypeRestrict, /** \~english Restricted argument \~russian Аргумент с qualifier `restrict` */ + TypeVolatile, /** \~english Volatile argument \~russian Аргумент с qualifier `volatile` */ TypeNone, /** \~english No type qualifier \~russian Квалификатор типа отсутствует */ }; //! \~english Scalar argument type recognized by the wrapper. //! \~russian Скалярный тип аргумента, распознаваемый оберткой. enum ArgType { - Char = 1, /** \~english Signed 8-bit integer \~russian Знаковое 8-битное целое */, - UChar, /** \~english Unsigned 8-bit integer \~russian Беззнаковое 8-битное целое */, - Short, /** \~english Signed 16-bit integer \~russian Знаковое 16-битное целое */, - UShort, /** \~english Unsigned 16-bit integer \~russian Беззнаковое 16-битное целое */, - Int, /** \~english Signed 32-bit integer \~russian Знаковое 32-битное целое */, - UInt, /** \~english Unsigned 32-bit integer \~russian Беззнаковое 32-битное целое */, - Long, /** \~english Signed long integer \~russian Знаковое long-целое */, - ULong, /** \~english Unsigned long integer \~russian Беззнаковое long-целое */, - Float, /** \~english Single-precision floating point \~russian Число с плавающей точкой одинарной точности */, + Char = 1, /** \~english Signed 8-bit integer \~russian Знаковое 8-битное целое */ + UChar, /** \~english Unsigned 8-bit integer \~russian Беззнаковое 8-битное целое */ + Short, /** \~english Signed 16-bit integer \~russian Знаковое 16-битное целое */ + UShort, /** \~english Unsigned 16-bit integer \~russian Беззнаковое 16-битное целое */ + Int, /** \~english Signed 32-bit integer \~russian Знаковое 32-битное целое */ + UInt, /** \~english Unsigned 32-bit integer \~russian Беззнаковое 32-битное целое */ + Long, /** \~english Signed long integer \~russian Знаковое long-целое */ + ULong, /** \~english Unsigned long integer \~russian Беззнаковое long-целое */ + Float, /** \~english Single-precision floating point \~russian Число с плавающей точкой одинарной точности */ Double, /** \~english Double-precision floating point \~russian Число с плавающей точкой двойной точности */ }; diff --git a/libs/main/text/piregularexpression.h b/libs/main/text/piregularexpression.h index 614597a7..4eb0467a 100644 --- a/libs/main/text/piregularexpression.h +++ b/libs/main/text/piregularexpression.h @@ -37,12 +37,14 @@ public: //! \~english Matching options. //! \~russian Опции сопоставления. enum Option { - None = 0x0, /*!< \~english No extra options \~russian Без дополнительных опций */, - CaseInsensitive = 0x01, /*!< \~english Ignore character case \~russian Игнорировать регистр символов */, - Singleline = 0x02, /*!< \~english Let \c . match a newline \~russian Разрешить \c . совпадать с переводом строки */, - Multiline = 0x04, /*!< \~english Let \c ^ and \c $ work on line boundaries \~russian Разрешить \c ^ и \c $ работать на границах строк */, - InvertedGreediness = 0x08, /*!< \~english Make quantifiers non-greedy by default \~russian Сделать квантификаторы по умолчанию нежадными */, - Extended = 0x10 /*!< \~english Use extended pattern syntax \~russian Использовать расширенный синтаксис шаблона */ + None = 0x0, /*!< \~english No extra options \~russian Без дополнительных опций */ + CaseInsensitive = 0x01, /*!< \~english Ignore character case \~russian Игнорировать регистр символов */ + Singleline = 0x02, /*!< \~english Let \c . match a newline \~russian Разрешить \c . совпадать с переводом строки */ + Multiline = + 0x04, /*!< \~english Let \c ^ and \c $ work on line boundaries \~russian Разрешить \c ^ и \c $ работать на границах строк */ + InvertedGreediness = + 0x08, /*!< \~english Make quantifiers non-greedy by default \~russian Сделать квантификаторы по умолчанию нежадными */ + Extended = 0x10 /*!< \~english Use extended pattern syntax \~russian Использовать расширенный синтаксис шаблона */ }; //! \~english Flag set of \a Option values. diff --git a/libs/main/types/pivariantsimple.h b/libs/main/types/pivariantsimple.h index 1ffe488f..e28e3fe3 100644 --- a/libs/main/types/pivariantsimple.h +++ b/libs/main/types/pivariantsimple.h @@ -106,6 +106,7 @@ public: destroy(); f = v.f; if (f && v.ptr) f->newT(ptr, v.ptr); + return *this; } //! \~english Stores value `v`. @@ -178,34 +179,26 @@ private: //! \~\brief //! \~english Registers a readable type name for %PIVariantSimple. //! \~russian Регистрирует читаемое имя типа для %PIVariantSimple. -#define REGISTER_PIVARIANTSIMPLE(Type) \ - template<> \ - class __VariantFunctions__: public __VariantFunctionsBase__ { \ - public: \ - __VariantFunctionsBase__ * instance() final { \ - static __VariantFunctions__ ret; \ - return &ret; \ - } \ - PIString typeName() const final { \ - static PIString ret(#Type); \ - return ret; \ - } \ - uint hash() const final { \ - static uint ret = typeName().hash(); \ - return ret; \ - } \ - void newT(void *& ptr, const void * value) final { \ - ptr = (void *)(new Type(*(const Type *)value)); \ - } \ - void newNullT(void *& ptr) final { \ - ptr = (void *)(new Type()); \ - } \ - void assignT(void *& ptr, const void * value) final { \ - *(Type *)ptr = *(const Type *)value; \ - } \ - void deleteT(void *& ptr) final { \ - delete (Type *)(ptr); \ - } \ +#define REGISTER_PIVARIANTSIMPLE(Type) \ + template<> \ + class __VariantFunctions__: public __VariantFunctionsBase__ { \ + public: \ + __VariantFunctionsBase__ * instance() final { \ + static __VariantFunctions__ ret; \ + return &ret; \ + } \ + PIString typeName() const final { \ + static PIString ret(#Type); \ + return ret; \ + } \ + uint hash() const final { \ + static uint ret = typeName().hash(); \ + return ret; \ + } \ + void newT(void *& ptr, const void * value) final { ptr = (void *)(new Type(*(const Type *)value)); } \ + void newNullT(void *& ptr) final { ptr = (void *)(new Type()); } \ + void assignT(void *& ptr, const void * value) final { *(Type *)ptr = *(const Type *)value; } \ + void deleteT(void *& ptr) final { delete (Type *)(ptr); } \ }; REGISTER_PIVARIANTSIMPLE(std::function) diff --git a/libs/main/units/piunits_base.h b/libs/main/units/piunits_base.h index a2001f46..154c0401 100644 --- a/libs/main/units/piunits_base.h +++ b/libs/main/units/piunits_base.h @@ -51,13 +51,7 @@ bool supportPrefixesSmaller(int type) const override; \ \ public: \ - //! \~english Returns localized name of this unit family. \ - //! \~russian Возвращает локализованное имя этого семейства единиц. \ - PIString className() const override { \ - return piTr(#Name, "PIUnits"); \ - } \ - //! \~english Returns stable identifier of this unit family. \ - //! \~russian Возвращает стабильный идентификатор этого семейства единиц. \ + PIString className() const override { return piTr(#Name, "PIUnits"); } \ uint classID() const override { \ static uint ret = PIStringAscii(#Name).hash(); \ return ret; \