fix
This commit is contained in:
@@ -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.
|
||||
|
||||
@@ -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 Число с плавающей точкой двойной точности */
|
||||
};
|
||||
|
||||
|
||||
@@ -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.
|
||||
|
||||
@@ -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__<Type>: public __VariantFunctionsBase__ { \
|
||||
public: \
|
||||
__VariantFunctionsBase__ * instance() final { \
|
||||
static __VariantFunctions__<Type> 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__<Type>: public __VariantFunctionsBase__ { \
|
||||
public: \
|
||||
__VariantFunctionsBase__ * instance() final { \
|
||||
static __VariantFunctions__<Type> 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<void(void *)>)
|
||||
|
||||
@@ -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; \
|
||||
|
||||
Reference in New Issue
Block a user