Каковы правила определения идентификаторов свойств автомотива?
Вот мои вопросы:
1.
enum VehiclePropertyType : int32_t {
STRING = 0x00100000,
BOOLEAN = 0x00200000,
INT32 = 0x00400000,
INT32_VEC = 0x00410000,
INT64 = 0x00500000,
INT64_VEC = 0x00510000,
FLOAT = 0x00600000,
FLOAT_VEC = 0x00610000,
BYTES = 0x00700000,
/**
* Any combination of scalar or vector types. The exact format must be
* provided in the description of the property.
*/
MIXED = 0x00e00000,
MASK = 0x00ff0000
};
почему INT32 0x00400000, а не 0x00300000?
2.
enum VehicleArea : int32_t {
GLOBAL = 0x01000000,
/** WINDOW maps to enum VehicleAreaWindow */
WINDOW = 0x03000000,
/** MIRROR maps to enum VehicleAreaMirror */
MIRROR = 0x04000000,
/** SEAT maps to enum VehicleAreaSeat */
SEAT = 0x05000000,
/** DOOR maps to enum VehicleAreaDoor */
DOOR = 0x06000000,
/** WHEEL maps to enum VehicleAreaWheel */
WHEEL = 0x07000000,
MASK = 0x0f000000,
};
почему WINDOW 0x03000000, а не 0x02000000?
3.
FUEL_DOOR_OPEN = (
0x0308
| VehiclePropertyGroup:SYSTEM
| VehiclePropertyType:BOOLEAN
| VehicleArea:GLOBAL),
RANGE_REMAINING = (
0x0308
| VehiclePropertyGroup:SYSTEM
| VehiclePropertyType:FLOAT
| VehicleArea:GLOBAL),
Каковы правила определения 0x0308, они имеют одинаковые значения?