Loading [MathJax]/extensions/tex2jax.js
  • <xmp id="om0om">
  • <table id="om0om"><noscript id="om0om"></noscript></table>

  • DriveWorks SDK Reference
    5.20.37 Release
    For Test and Development only

    All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
    VehicleIO.h
    Go to the documentation of this file.
    1
    2//
    3// Notice
    4// ALL NVIDIA DESIGN SPECIFICATIONS AND CODE ("MATERIALS") ARE PROVIDED "AS IS" NVIDIA MAKES
    5// NO REPRESENTATIONS, WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO
    6// THE MATERIALS, AND EXPRESSLY DISCLAIMS ANY IMPLIED WARRANTIES OF NONINFRINGEMENT,
    7// MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE.
    8//
    9// NVIDIA CORPORATION & AFFILIATES assumes no responsibility for the consequences of use of such
    10// information or for any infringement of patents or other rights of third parties that may
    11// result from its use. No license is granted by implication or otherwise under any patent
    12// or patent rights of NVIDIA CORPORATION & AFFILIATES. No third party distribution is allowed unless
    13// expressly authorized by NVIDIA. Details are subject to change without notice.
    14// This code supersedes and replaces all information previously supplied.
    15// NVIDIA CORPORATION & AFFILIATES products are not authorized for use as critical
    16// components in life support devices or systems without express written approval of
    17// NVIDIA CORPORATION & AFFILIATES.
    18//
    19// SPDX-FileCopyrightText: Copyright (c) 2015-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
    20// SPDX-License-Identifier: LicenseRef-NvidiaProprietary
    21//
    22// NVIDIA CORPORATION, its affiliates and licensors retain all intellectual
    23// property and proprietary rights in and to this material, related
    24// documentation and any modifications thereto. Any use, reproduction,
    25// disclosure or distribution of this material and related documentation
    26// without an express license agreement from NVIDIA CORPORATION or
    27// its affiliates is strictly prohibited.
    28//
    30
    46#ifndef DW_VEHICLEIO_H_
    47#define DW_VEHICLEIO_H_
    48
    51#include <dw/core/base/Config.h>
    54#include <dw/core/base/Types.h>
    58#include <dw/rig/Rig.h>
    59
    60#include <stdint.h>
    61
    62#ifdef __cplusplus
    63extern "C" {
    64#endif
    65
    66typedef struct dwVehicleIOObject* dwVehicleIOHandle_t;
    67
    85dwStatus dwVehicleIO_initialize(dwVehicleIOHandle_t* const obj, dwVehicleIOType const type, const dwVehicle* const properties,
    86 dwContextHandle_t const ctx);
    105 const char* const dbcFilePath, dwContextHandle_t const ctx);
    106
    125 dwConstRigHandle_t const rig,
    126 dwContextHandle_t const ctx);
    127
    143
    159
    177dwStatus dwVehicleIO_selectDriverOverrides(bool const throttleOverride, bool const steeringOverride,
    178 bool const brakeOverride, bool const gearOverride,
    179 dwVehicleIOHandle_t const obj);
    180
    200dwStatus dwVehicleIO_consumeCANFrame(dwCANMessage const* const msg, uint32_t const sensorId, dwVehicleIOHandle_t const obj);
    201
    219dwStatus dwVehicleIO_consumeDataPacket(const dwDataPacket* const pkt, uint32_t const sensorId, dwVehicleIOHandle_t const obj);
    220
    236
    255 dwVehicleIOHandle_t const obj);
    256
    276 dwVehicleIOHandle_t const obj);
    277
    296 dwVehicleIOHandle_t const obj);
    297
    316 dwVehicleIOHandle_t const obj);
    317
    336 dwVehicleIOHandle_t const obj);
    337
    350 dwVehicleIOHandle_t const obj);
    351
    364 dwVehicleIOHandle_t const obj);
    365
    379 dwVehicleIOHandle_t const obj);
    380
    394 dwVehicleIOHandle_t const obj);
    395
    408 dwVehicleIOHandle_t const obj);
    409
    422 dwVehicleIOHandle_t const obj);
    423
    452
    470dwStatus dwVehicleIO_addCANSensor(uint32_t const vehicleIOId, dwSensorHandle_t const sensorHandle, dwVehicleIOHandle_t const obj);
    471
    489dwStatus dwVehicleIO_addDataSensor(uint32_t const vehicleIOId, dwSensorHandle_t const sensorHandle, dwVehicleIOHandle_t const obj);
    490
    491#ifdef __cplusplus
    492}
    493#endif
    495#endif // DW_VEHICLEIO_H_
    Holds a CAN package.
    Definition: CANTypes.h:108
    NVIDIA DriveWorks API: CAN
    NVIDIA DriveWorks API: Core Methods
    NVIDIA DriveWorks API: Data
    dwStatus
    Status definition.
    Definition: ErrorDefs.h:44
    NVIDIA DriveWorks API: Rig Configuration
    NVIDIA DriveWorks API: Sensors
    NVIDIA DriveWorks API: Core Types
    VehicleIO Capabilities.
    NVIDIA DriveWorks API: VehicleIO car controller
    NVIDIA DriveWorks API: VehicleIO VAL interface structures
    NVIDIA DriveWorks API: Core Exports
    DW_API_PUBLIC dwStatus dwVehicleIO_initialize(dwVehicleIOHandle_t *const obj, dwVehicleIOType const type, const dwVehicle *const properties, dwContextHandle_t const ctx)
    Initialize VehicleIO and prepare all internal structures.
    DW_API_PUBLIC dwStatus dwVehicleIO_sendNonSafetyCommand(const dwVehicleIONonSafetyCommand *const nonSafeCmd, dwVehicleIOHandle_t const obj)
    Send a vehicle non-safety command to the VehicleIO.
    DW_API_PUBLIC dwStatus dwVehicleIO_sendASILCommand(dwVehicleIOASILCommandE2EWrapper const *const asilCmd, dwVehicleIOHandle_t const obj)
    Send a vehicle command with ASIL rating to the VehicleIO.
    DW_API_PUBLIC dwStatus dwVehicleIO_addCANSensor(uint32_t const vehicleIOId, dwSensorHandle_t const sensorHandle, dwVehicleIOHandle_t const obj)
    Add CAN sensor handle and corresponding VehicleIO configuration ID.
    DW_API_PUBLIC dwStatus dwVehicleIO_getVehicleActuationFeedback(dwVehicleIOActuationFeedback *const actuationFeedback, dwVehicleIOHandle_t const obj)
    Retrieve current vehicle actuation feedback.
    DW_API_PUBLIC dwStatus dwVehicleIO_release(dwVehicleIOHandle_t const obj)
    Release used memory and close all modules.
    DW_API_PUBLIC dwStatus dwVehicleIO_reset(dwVehicleIOHandle_t const obj)
    Reset VehicleIO to default state.
    DW_API_PUBLIC dwStatus dwVehicleIO_getVehicleNonSafetyState(dwVehicleIONonSafetyState *const nonSafeState, dwVehicleIOHandle_t const obj)
    Retrieve current vehicle non-safety state.
    DW_API_PUBLIC dwStatus dwVehicleIO_getVehicleQMState(dwVehicleIOQMState *const qmState, dwVehicleIOHandle_t const obj)
    Retrieve current vehicle state with QM rating.
    DW_API_PUBLIC dwStatus dwVehicleIO_getCapabilities(dwVehicleIOCapabilities *const caps, dwVehicleIOHandle_t const obj)
    Retrieve current VehicleIO capabilities.
    DW_API_PUBLIC dwStatus dwVehicleIO_sendSafetyCommand(const dwVehicleIOSafetyCommand *const safeCmd, dwVehicleIOHandle_t const obj)
    Send a vehicle safety command to the VehicleIO.
    DW_API_PUBLIC dwStatus dwVehicleIO_sendCalibrationData(dwValSensorCalibration const *const sensorCalibration, dwVehicleIOHandle_t const obj)
    Send a vehicle sensor calibration to the VehicleIO.
    DW_API_PUBLIC dwStatus dwVehicleIO_setDrivingMode(dwVehicleIODrivingMode const mode, dwVehicleIOHandle_t const obj)
    Setting driving mode allows to control the behaviour of VehicleIO module with regards to the permitte...
    DW_API_PUBLIC dwStatus dwVehicleIO_getVehicleASILState(dwVehicleIOASILStateE2EWrapper *const asilState, dwVehicleIOHandle_t const obj)
    Retrieve current vehicle state with ASIL rating.
    struct dwVehicleIOObject * dwVehicleIOHandle_t
    Definition: VehicleIO.h:66
    DW_API_PUBLIC dwStatus dwVehicleIO_sendQMCommand(dwVehicleIOQMCommand const *const qmCmd, dwVehicleIOHandle_t const obj)
    Send a vehicle command with QM rating to the VehicleIO.
    DW_API_PUBLIC dwStatus dwVehicleIO_addDataSensor(uint32_t const vehicleIOId, dwSensorHandle_t const sensorHandle, dwVehicleIOHandle_t const obj)
    Add data sensor handle and corresponding VehicleIO configuration ID.
    DW_API_PUBLIC dwStatus dwVehicleIO_selectDriverOverrides(bool const throttleOverride, bool const steeringOverride, bool const brakeOverride, bool const gearOverride, dwVehicleIOHandle_t const obj)
    Select the overrides that the driver can use to disable vehicle control.
    DW_API_PUBLIC dwStatus dwVehicleIO_getVehicleSafetyState(dwVehicleIOSafetyState *const safeState, dwVehicleIOHandle_t const obj)
    Retrieve current vehicle safety state.
    DW_API_PUBLIC dwStatus dwVehicleIO_consumeDataPacket(const dwDataPacket *const pkt, uint32_t const sensorId, dwVehicleIOHandle_t const obj)
    Similar to dwVehicleIO_consumeCANFrame.
    DW_API_PUBLIC dwStatus dwVehicleIO_consumeCANFrame(dwCANMessage const *const msg, uint32_t const sensorId, dwVehicleIOHandle_t const obj)
    Parse a received event.
    DW_API_PUBLIC dwStatus dwVehicleIO_sendEgomotionData(dwValEgomotion const *const egomotion, dwVehicleIOHandle_t const obj)
    Send a vehicle egomotion data to the VehicleIO.
    DW_API_PUBLIC dwStatus dwVehicleIO_initializeFromRig(dwVehicleIOHandle_t *const obj, dwConstRigHandle_t const rig, dwContextHandle_t const ctx)
    Initialize VehicleIO and prepare all internal structures from Rig Configuration.
    DW_API_PUBLIC dwStatus dwVehicleIO_initializeFromDBC(dwVehicleIOHandle_t *const obj, dwVehicleIOType const type, const dwVehicle *const properties, const char *const dbcFilePath, dwContextHandle_t const ctx)
    Initialize VehicleIO and prepare all internal structures from DBC File.
    Command signals of ValEgomotion. Expected to be sent from NDAS to VAL.
    Command signals of ValSensorCalibration. Expected to be sent from NDAS to VAL.
    E2E Profile4 Wrapper for dwVehicleIOASILCommand.
    E2E Profile4 Wrapper for dwVehicleIOASILState.
    Non-safety critical RoV commands.
    Non-safety critical RoV state.
    Command signals without an ASIL rating. Expected to be sent from NDAS to VAL.
    State signals without an ASIL rating. Expected to be sent from VAL to AV Stack.
    Safety critical RoV commands.
    Safety critical VIO state.
    struct dwContextObject * dwContextHandle_t
    Context handle.
    Definition: Context.h:85
    #define DW_API_PUBLIC
    Definition: Exports.h:56
    Holds a data packet.
    Definition: Data.h:61
    struct dwRigObject const * dwConstRigHandle_t
    Handle representing the const Rig interface.
    Definition: Rig.h:74
    DEPRECATED: Properties of a passenger car vehicle.
    Definition: Vehicle.h:428
    struct dwSensorObject * dwSensorHandle_t
    Handle representing a sensor.
    Definition: SensorTypes.h:75
    人人超碰97caoporen国产