这是我的问题:
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的规则是什么,它们具有相同的值?