/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Information about a signal decoder.See Also:
AWS
* API Reference
The fully qualified name of a signal decoder as defined in a vehicle * model.
*/ inline const Aws::String& GetFullyQualifiedName() const{ return m_fullyQualifiedName; } /** *The fully qualified name of a signal decoder as defined in a vehicle * model.
*/ inline bool FullyQualifiedNameHasBeenSet() const { return m_fullyQualifiedNameHasBeenSet; } /** *The fully qualified name of a signal decoder as defined in a vehicle * model.
*/ inline void SetFullyQualifiedName(const Aws::String& value) { m_fullyQualifiedNameHasBeenSet = true; m_fullyQualifiedName = value; } /** *The fully qualified name of a signal decoder as defined in a vehicle * model.
*/ inline void SetFullyQualifiedName(Aws::String&& value) { m_fullyQualifiedNameHasBeenSet = true; m_fullyQualifiedName = std::move(value); } /** *The fully qualified name of a signal decoder as defined in a vehicle * model.
*/ inline void SetFullyQualifiedName(const char* value) { m_fullyQualifiedNameHasBeenSet = true; m_fullyQualifiedName.assign(value); } /** *The fully qualified name of a signal decoder as defined in a vehicle * model.
*/ inline SignalDecoder& WithFullyQualifiedName(const Aws::String& value) { SetFullyQualifiedName(value); return *this;} /** *The fully qualified name of a signal decoder as defined in a vehicle * model.
*/ inline SignalDecoder& WithFullyQualifiedName(Aws::String&& value) { SetFullyQualifiedName(std::move(value)); return *this;} /** *The fully qualified name of a signal decoder as defined in a vehicle * model.
*/ inline SignalDecoder& WithFullyQualifiedName(const char* value) { SetFullyQualifiedName(value); return *this;} /** *The network protocol for the vehicle. For example, CAN_SIGNAL
* specifies a protocol that defines how data is communicated between electronic
* control units (ECUs). OBD_SIGNAL
specifies a protocol that defines
* how self-diagnostic data is communicated between ECUs.
The network protocol for the vehicle. For example, CAN_SIGNAL
* specifies a protocol that defines how data is communicated between electronic
* control units (ECUs). OBD_SIGNAL
specifies a protocol that defines
* how self-diagnostic data is communicated between ECUs.
The network protocol for the vehicle. For example, CAN_SIGNAL
* specifies a protocol that defines how data is communicated between electronic
* control units (ECUs). OBD_SIGNAL
specifies a protocol that defines
* how self-diagnostic data is communicated between ECUs.
The network protocol for the vehicle. For example, CAN_SIGNAL
* specifies a protocol that defines how data is communicated between electronic
* control units (ECUs). OBD_SIGNAL
specifies a protocol that defines
* how self-diagnostic data is communicated between ECUs.
The network protocol for the vehicle. For example, CAN_SIGNAL
* specifies a protocol that defines how data is communicated between electronic
* control units (ECUs). OBD_SIGNAL
specifies a protocol that defines
* how self-diagnostic data is communicated between ECUs.
The network protocol for the vehicle. For example, CAN_SIGNAL
* specifies a protocol that defines how data is communicated between electronic
* control units (ECUs). OBD_SIGNAL
specifies a protocol that defines
* how self-diagnostic data is communicated between ECUs.
The ID of a network interface that specifies what network protocol a vehicle * follows.
*/ inline const Aws::String& GetInterfaceId() const{ return m_interfaceId; } /** *The ID of a network interface that specifies what network protocol a vehicle * follows.
*/ inline bool InterfaceIdHasBeenSet() const { return m_interfaceIdHasBeenSet; } /** *The ID of a network interface that specifies what network protocol a vehicle * follows.
*/ inline void SetInterfaceId(const Aws::String& value) { m_interfaceIdHasBeenSet = true; m_interfaceId = value; } /** *The ID of a network interface that specifies what network protocol a vehicle * follows.
*/ inline void SetInterfaceId(Aws::String&& value) { m_interfaceIdHasBeenSet = true; m_interfaceId = std::move(value); } /** *The ID of a network interface that specifies what network protocol a vehicle * follows.
*/ inline void SetInterfaceId(const char* value) { m_interfaceIdHasBeenSet = true; m_interfaceId.assign(value); } /** *The ID of a network interface that specifies what network protocol a vehicle * follows.
*/ inline SignalDecoder& WithInterfaceId(const Aws::String& value) { SetInterfaceId(value); return *this;} /** *The ID of a network interface that specifies what network protocol a vehicle * follows.
*/ inline SignalDecoder& WithInterfaceId(Aws::String&& value) { SetInterfaceId(std::move(value)); return *this;} /** *The ID of a network interface that specifies what network protocol a vehicle * follows.
*/ inline SignalDecoder& WithInterfaceId(const char* value) { SetInterfaceId(value); return *this;} /** *Information about signal decoder using the Controller Area Network (CAN) * protocol.
*/ inline const CanSignal& GetCanSignal() const{ return m_canSignal; } /** *Information about signal decoder using the Controller Area Network (CAN) * protocol.
*/ inline bool CanSignalHasBeenSet() const { return m_canSignalHasBeenSet; } /** *Information about signal decoder using the Controller Area Network (CAN) * protocol.
*/ inline void SetCanSignal(const CanSignal& value) { m_canSignalHasBeenSet = true; m_canSignal = value; } /** *Information about signal decoder using the Controller Area Network (CAN) * protocol.
*/ inline void SetCanSignal(CanSignal&& value) { m_canSignalHasBeenSet = true; m_canSignal = std::move(value); } /** *Information about signal decoder using the Controller Area Network (CAN) * protocol.
*/ inline SignalDecoder& WithCanSignal(const CanSignal& value) { SetCanSignal(value); return *this;} /** *Information about signal decoder using the Controller Area Network (CAN) * protocol.
*/ inline SignalDecoder& WithCanSignal(CanSignal&& value) { SetCanSignal(std::move(value)); return *this;} /** *Information about signal decoder using the On-board diagnostic (OBD) II * protocol.
*/ inline const ObdSignal& GetObdSignal() const{ return m_obdSignal; } /** *Information about signal decoder using the On-board diagnostic (OBD) II * protocol.
*/ inline bool ObdSignalHasBeenSet() const { return m_obdSignalHasBeenSet; } /** *Information about signal decoder using the On-board diagnostic (OBD) II * protocol.
*/ inline void SetObdSignal(const ObdSignal& value) { m_obdSignalHasBeenSet = true; m_obdSignal = value; } /** *Information about signal decoder using the On-board diagnostic (OBD) II * protocol.
*/ inline void SetObdSignal(ObdSignal&& value) { m_obdSignalHasBeenSet = true; m_obdSignal = std::move(value); } /** *Information about signal decoder using the On-board diagnostic (OBD) II * protocol.
*/ inline SignalDecoder& WithObdSignal(const ObdSignal& value) { SetObdSignal(value); return *this;} /** *Information about signal decoder using the On-board diagnostic (OBD) II * protocol.
*/ inline SignalDecoder& WithObdSignal(ObdSignal&& value) { SetObdSignal(std::move(value)); return *this;} private: Aws::String m_fullyQualifiedName; bool m_fullyQualifiedNameHasBeenSet = false; SignalDecoderType m_type; bool m_typeHasBeenSet = false; Aws::String m_interfaceId; bool m_interfaceIdHasBeenSet = false; CanSignal m_canSignal; bool m_canSignalHasBeenSet = false; ObdSignal m_obdSignal; bool m_obdSignalHasBeenSet = false; }; } // namespace Model } // namespace IoTFleetWise } // namespace Aws