31 #ifndef DW_WORLDMODEL_LANE_H_ 32 #define DW_WORLDMODEL_LANE_H_ 95 #define DW_LANE_EDGE_STYLE_IS_GROUP 1 147 #define DW_LANE_CHUNK_SIZE_TWO_LOG 3u 148 #define DW_LANE_CHUNK_SIZE (1u << DW_LANE_CHUNK_SIZE_TWO_LOG) 149 #define DW_LANE_CHUNK_SIZE_MASK (DW_LANE_CHUNK_SIZE - 1) 222 #define DW_LANE_CHUNK_ARRAY_MAX_COUNT 2000 232 #define DW_LANE_IS_VEHICLE (1 << 16) 233 #define DW_LANE_IS_OTHER_ANIMATE (1 << 17) 234 #define DW_LANE_IS_VRU (1 << 18) 235 #define DW_LANE_IS_BIKE (1 << 19) 236 #define DW_LANE_IS_PEDESTRIAN (1 << 20) 237 #define DW_LANE_IS_INFRA (1 << 21) 238 #define DW_LANE_IS_SPECIAL (1 << 22) 240 #define DW_LANE_VEHICLE_BASE (DW_LANE_IS_VEHICLE) 241 #define DW_LANE_SPECIAL_BASE (DW_LANE_IS_VEHICLE + DW_LANE_IS_SPECIAL) 242 #define DW_LANE_VRU_BASE (DW_LANE_IS_VRU + DW_LANE_IS_OTHER_ANIMATE) 243 #define DW_LANE_BIKE_BASE (DW_LANE_IS_BIKE + DW_LANE_VRU_BASE) 244 #define DW_LANE_PEDESTRIAN_BASE (DW_LANE_IS_PEDESTRIAN + DW_LANE_VRU_BASE) 245 #define DW_LANE_TRAIN_BASE (DW_LANE_IS_INFRA + DW_LANE_IS_OTHER_ANIMATE) 246 #define DW_LANE_ANIMAL_BASE (DW_LANE_IS_VRU + DW_LANE_IS_OTHER_ANIMATE) 299 #define DW_LANE_PREVIOUS_ID_MAX_COUNT 10 300 #define DW_LANE_CHUNK_INDICES_MAX_COUNT 100 331 #define DW_LANE_ARRAY_MAX_COUNT 50 374 #define DW_LANE_CHANGE_ARRAY_MAX_COUNT 20 412 #define DW_LANE_RELATION_ARRAY_MAX_COUNT 20 427 #endif // DW_WORLDMODEL_LANE_H_ #define DW_LANE_RELATION_ARRAY_MAX_COUNT
uint32_t laneIndex
lane index into dwLaneArray
Shoulder, not a real lane.
Short dashed line, by itself.
Such as square reflex, part of group.
dwConfidence1f leftVerticalConfidence
NVIDIA DriveWorks API: Core Types
uint32_t vertex
vertex index referencing vertices of lane
float float32_t
Specifies POD types.
uint8_t rightClassConfidence[DW_LANE_CHUNK_SIZE]
Right classification 0-255 confidence.
Such as square reflex, by itself.
uint8_t visibilityConfidenceRight[DW_LANE_CHUNK_SIZE]
Visibility confidence right.
uint32_t previousIdCount
Number of previous IDs in below array.
Other type of marking, by itself.
uint8_t rightColor[DW_LANE_CHUNK_SIZE]
Right color.
bool isValid
Whether lane segment is valid.
uint64_t currentId
Lane ID for tracking purposes.
float32_t confidence
Confidence that lane exists.
Defines a three-element floating-point vector.
Lane for prioritized vehicles.
float32_t exitFraction
[-1, 1]
dwTime_t timestamp_us
Timestamp.
dwLaneEdgeColor
Edge color, mutually exclusive. Describes the first encountered from inside lane. ...
dwVector3f right[DW_LANE_CHUNK_SIZE]
Right (inner) edge of lane.
uint8_t rightStyle[DW_LANE_CHUNK_SIZE]
Right style.
Virtual during split to left.
Virtual with adjacent parking.
dwLaneTurnsAllowed
The turn restrictions on a dwLane.
dwLaneSegment startSegment
dwConfidence1f leftLateralConfidence
uint8_t leftClassConfidence[DW_LANE_CHUNK_SIZE]
Left classification 0-255 confidence.
dwLaneEndType
The type of lane dwLane begins and end.
#define DW_LANE_CHUNK_INDICES_MAX_COUNT
uint64_t id
ID for tracking purposes (zero is invalid)
Describes lane change availability between two lane segments.
dwVector3f center[DW_LANE_CHUNK_SIZE]
Center of lane suggested to follow.
Two are joining at some point.
dwTime_t timestamp_us
Timestamp.
Our strategy for uncertainty representation is to give classification confidence scalars for classifi...
uint32_t chunkCount
Number of chunks in the array.
#define DW_LANE_PEDESTRIAN_BASE
dwConfidence1f centerLateralConfidence
Two are forking apart at some point.
dwTime_t timestamp_us
Timestamp.
uint8_t leftStyleConfidence[DW_LANE_CHUNK_SIZE]
Style 0-255 confidence.
#define DW_LANE_CHUNK_ARRAY_MAX_COUNT
dwLaneEndType beginType
Information about how a lane begins (first vertex)
Curb, such as transition to sidewalk.
uint8_t rightStyleConfidence[DW_LANE_CHUNK_SIZE]
Style 0-255 confidence.
#define DW_LANE_PREVIOUS_ID_MAX_COUNT
The lane chunks hold a fixed number of vertices.
dwConfidence1f normalSidewayConfidence
The main data structure, holds or refers to the core information, such as the left or right inner edg...
dwConfidence1f normalForwardConfidence
Virtual during split to right.
Two segments are corresponding.
Continues but is at the end of local scope.
Curb, such as drivable into driveway.
Solid line, part of group.
Described a vertex in a dwLane object.
dwLaneEdgeClass
Edge main classes.
uint8_t leftColorConfidence[DW_LANE_CHUNK_SIZE]
Color 0-255 confidence.
Describes the relationship between a pair of lane segments.
float32_t officialSpeed_mps
Official speed limit in meters/second.
pedestrian crossing or path
int64_t dwTime_t
Specifies a timestamp unit, in microseconds.
dwLaneRelationType
Types of relationship between a pair of lane segments.
Other than above categories.
Curb, intended for pedestrian entry.
uint8_t leftClass[DW_LANE_CHUNK_SIZE]
Left class.
Virtual during intersection.
uint8_t occupancy[DW_LANE_CHUNK_SIZE]
dwVector3f normal[DW_LANE_CHUNK_SIZE]
Unit surface normal at center.
Other type of marking, part of group.
Continues (for example because vehicle lane changes into divider lane)
uint8_t leftColor[DW_LANE_CHUNK_SIZE]
Left color.
dwLaneEndType endType
Information about how a lane ends (last vertex)
uint8_t visibilityConfidenceLeft[DW_LANE_CHUNK_SIZE]
Visibility confidence left.
Ends in the real world (stub)
uint8_t rightClass[DW_LANE_CHUNK_SIZE]
Right class.
dwLaneEdgeStyle
Edge style, mutually exclusive. Describes the first encountered from inside lane. ...
Rumble strip, part of group.
dwConfidence1f rightVerticalConfidence
Shared bi-directional lane.
#define DW_LANE_ANIMAL_BASE
dwConfidence1f centerVerticalConfidence
Two intersect at a point.
uint32_t laneIndex
lane index into dwLaneArray
Such as Botts dot, by itself.
Changes (such as from vehicle lane to divider)
Zig-zag line, part of group.
#define DW_LANE_ARRAY_MAX_COUNT
uint8_t rightColorConfidence[DW_LANE_CHUNK_SIZE]
Color 0-255 confidence.
float32_t commonSpeed_mps
Commonly used (de-facto) speed in meters/sec.
Virtual during merge to right.
dwConfidence1f rightLateralConfidence
#define DW_LANE_BIKE_BASE
Transition of material, grass, gravel.
#define DW_LANE_CHANGE_ARRAY_MAX_COUNT
float32_t classConfidence
Classification confidence.
uint32_t entryVertex
entry point vertex index referencing vertices of lane
Such as Botts dot, part of group.
dwLaneOccupancy
Lane occupancy, indicating if we know whether there is another actor in a certain portion of lane...
Not blocked, but not for driving.
uint8_t occupancyConfidence[DW_LANE_CHUNK_SIZE]
0-255 Occupancy confidence
float32_t entryFraction
[-1, 1], e.g.
dwVector3f left[DW_LANE_CHUNK_SIZE]
Left (inner) edge of lane.
#define DW_LANE_VEHICLE_BASE
dwLaneClass
Classification of lanes.
#define DW_LANE_TRAIN_BASE
Virtual during merge to left.
uint8_t leftStyle[DW_LANE_CHUNK_SIZE]
Left style.
#define DW_LANE_CHUNK_SIZE
bool bidirectional
Has corresponding path in the opposite direction.
Lanes only for loading/unloading.
Short dashed line, part of group.
A segment of a dwLane object, by referenced by the id and point indices.
#define DW_LANE_SPECIAL_BASE
bool isValid
Whether lane vertex is valid.
dwLaneClass laneClass
Lane class.
Different direction at different times.
bike lane or bike crossing
May be occupied, may not be.
float32_t subclassConfidence
Subclassification confidence.
dwLaneTurnsAllowed turnsAllowed
Information about future turns allowed.
uint32_t vertexCount
Number of vertices.