41 lines
1.3 KiB
Markdown
41 lines
1.3 KiB
Markdown
# Типы данных
|
||
|
||
Сия спецификация, помимо всего прочего, также определяет некоторые необходимые типы и структуры данных. В данном файле вы найдёте их описание и декларации.
|
||
|
||
|
||
|
||
#### LocID
|
||
|
||
Идентификатор локального для конкретного сервера объекта.
|
||
|
||
```C++
|
||
typedef uint64_t LocID;
|
||
```
|
||
|
||
|
||
#### GlobID
|
||
|
||
Идентификатор глобального объекта.
|
||
|
||
```C++
|
||
typedef struct {
|
||
uint64_t Object;
|
||
std::string Server; // Доменное имя сервера-владельца объекта
|
||
} GlobID;
|
||
```
|
||
|
||
#### Power
|
||
|
||
Права доступа к какому-либо объекту. Представляет из себя набор следующих флагов:
|
||
|
||
- `0b00000000000000000000000000000001`: чтение
|
||
- `0b00000000000000000000000000000010`: запись
|
||
- `0b00000000000000000000000000000100`: удаление
|
||
- `0b10000000000000000000000000000000`: изменение прав доступа
|
||
- `0b01111111111111111111111111111000`: нераспределено
|
||
|
||
Нераспределённые флаги могут быть использованы в расширениях протокола.
|
||
|
||
```C++
|
||
typedef uint32_t Power;
|
||
``` |