78#ifndef DW_EGOMOTION_PRODUCER_STATE_H_
79#define DW_EGOMOTION_PRODUCER_STATE_H_
NVIDIA DriveWorks API: Egomotion Methods
Defines a three-element floating-point vector.
dwCoordinateSystem
Coordinate systems.
int64_t dwTime_t
Specifies a timestamp unit, in microseconds.
struct dwContextObject * dwContextHandle_t
Context handle.
dwStatus
Status definition.
struct dwEgomotionObject const * dwEgomotionConstHandle_t
Const Egomotion Handle.
dwMotionModel
Defines the motion models.
struct dwEgomotionObject * dwEgomotionHandle_t
Egomotion Handle.
Holds egomotion uncertainty estimates for a relative motion estimate.
Holds egomotion state estimate.
Holds egomotion uncertainty estimates.
dwMotionModel type
Type of the motion model used to hold data by the state.
size_t historySize
Maximal number of elements to keep in history.
DW_API_PUBLIC dwStatus dwEgomotionState_getHistorySize(size_t *num, dwConstEgomotionStateHandle_t obj)
DW_API_PUBLIC dwStatus dwEgomotionState_release(dwEgomotionStateHandle_t state)
Releases the egomotion state previously created with dwEgomotionState_createEmpty.
DW_API_PUBLIC dwStatus dwEgomotionState_getGyroscopeBias(dwVector3f *gyroBias, dwConstEgomotionStateHandle_t obj)
struct dwEgomotionStateObject * dwEgomotionStateHandle_t
DW_API_PUBLIC dwStatus dwEgomotionState_getEstimation(dwEgomotionResult *result, dwConstEgomotionStateHandle_t obj)
struct dwEgomotionStateObject const * dwConstEgomotionStateHandle_t
DW_API_PUBLIC dwStatus dwEgomotionState_serialize(size_t *numBytes, uint8_t *buffer, size_t bufferCapacity, dwConstEgomotionStateHandle_t state)
Serialize the state out into the provided buffer.
DW_API_PUBLIC dwStatus dwEgomotion_getState(dwEgomotionStateHandle_t state, dwEgomotionConstHandle_t obj)
Fills out already preallocated state handle.
DW_API_PUBLIC dwStatus dwEgomotionState_deserialize(const uint8_t *buffer, size_t bufferSize, dwEgomotionStateHandle_t state)
Deserialize the state from the provided buffer.
DW_API_PUBLIC dwStatus dwEgomotionState_copy(dwEgomotionStateHandle_t state, dwConstEgomotionStateHandle_t source)
Copy existing egomotion state to preallocated state handle.
DW_API_PUBLIC dwStatus dwEgomotionState_createEmpty(dwEgomotionStateHandle_t *state, dwEgomotionStateParams params, dwContextHandle_t ctx)
Create empty state for a given motion model type.
DW_API_PUBLIC dwStatus dwEgomotionState_getMotionModel(dwMotionModel *model, dwConstEgomotionStateHandle_t obj)
DW_API_PUBLIC dwStatus dwEgomotionState_getUncertainty(dwEgomotionUncertainty *result, dwConstEgomotionStateHandle_t obj)
DW_API_PUBLIC dwStatus dwEgomotionState_getHistoryElement(dwEgomotionResult *pose, dwEgomotionUncertainty *uncertainty, size_t index, dwConstEgomotionStateHandle_t obj)
DW_API_PUBLIC dwStatus dwEgomotionState_getHistoryCapacity(size_t *capacity, dwConstEgomotionStateHandle_t obj)
DW_API_PUBLIC dwStatus dwEgomotionState_computeBodyTransformation(dwTransformation3f *const transformationAToB, dwEgomotionRelativeUncertainty *const uncertainty, dwTime_t const timestamp, dwCoordinateSystem const coordinateSystemA, dwCoordinateSystem const coordinateSystemB, dwConstEgomotionStateHandle_t const obj)
DW_API_PUBLIC dwStatus dwEgomotionState_computeRelativeTransformation(dwTransformation3f *poseAtoB, dwEgomotionRelativeUncertainty *uncertainty, dwTime_t timestamp_a, dwTime_t timestamp_b, dwConstEgomotionStateHandle_t obj)
DW_API_PUBLIC dwStatus dwEgomotionState_getEstimationTimestamp(dwTime_t *timestamp, dwConstEgomotionStateHandle_t obj)
DW_API_PUBLIC dwStatus dwEgomotion_getHistoryCapacity(size_t *capacity, dwEgomotionConstHandle_t obj)
Returns the capacity of the history, i.e.
DW_API_PUBLIC dwStatus dwEgomotionState_getMaxNumBytes(size_t *bufferCapacity, dwConstEgomotionStateHandle_t state)
Get maximal number of bytes required for a buffer to contain serialized state.
DW_API_PUBLIC dwStatus dwEgomotion_createEmptyState(dwEgomotionStateHandle_t *state, dwEgomotionHandle_t obj)
Create empty state from the given egomotion module.
Defines egomotion state initialization parameters.