summaryrefslogtreecommitdiff
path: root/SmartDeviceLink/public/SDLBodyInformation.h
blob: 8ac6056ef8d12df0169db1931ae9cc668bc6f445 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
//  SDLBodyInformation.h
//

#import "SDLRPCMessage.h"

#import "SDLIgnitionStableStatus.h"
#import "SDLIgnitionStatus.h"
#import "SDLRPCStruct.h"

@class SDLDoorStatus;
@class SDLGateStatus;
@class SDLRoofStatus;

NS_ASSUME_NONNULL_BEGIN

/// Vehicle data body information containing information like the park brake status, the ignition status, gate and roof statuses, etc.
@interface SDLBodyInformation : SDLRPCStruct

/**
 * @param parkBrakeActive - @(parkBrakeActive)
 * @param ignitionStableStatus - ignitionStableStatus
 * @param ignitionStatus - ignitionStatus
 * @return A SDLBodyInformation object
 */
- (instancetype)initWithParkBrakeActive:(BOOL)parkBrakeActive ignitionStableStatus:(SDLIgnitionStableStatus)ignitionStableStatus ignitionStatus:(SDLIgnitionStatus)ignitionStatus;

/**
 * @param parkBrakeActive - @(parkBrakeActive)
 * @param ignitionStableStatus - ignitionStableStatus
 * @param ignitionStatus - ignitionStatus
 * @param doorStatuses - doorStatuses
 * @param gateStatuses - gateStatuses
 * @param roofStatuses - roofStatuses
 * @return A SDLBodyInformation object
 */
- (instancetype)initWithParkBrakeActive:(BOOL)parkBrakeActive ignitionStableStatus:(SDLIgnitionStableStatus)ignitionStableStatus ignitionStatus:(SDLIgnitionStatus)ignitionStatus doorStatuses:(nullable NSArray<SDLDoorStatus *> *)doorStatuses gateStatuses:(nullable NSArray<SDLGateStatus *> *)gateStatuses roofStatuses:(nullable NSArray<SDLRoofStatus *> *)roofStatuses;

/**
 * References signal "PrkBrkActv_B_Actl".

 Required
 */
@property (strong, nonatomic) NSNumber<SDLBool> *parkBrakeActive;

/**
 * References signal "Ignition_Switch_Stable". See IgnitionStableStatus.

 Required
 */
@property (strong, nonatomic) SDLIgnitionStableStatus ignitionStableStatus;

/**
 * References signal "Ignition_status". See IgnitionStatus.

 Required
 */
@property (strong, nonatomic) SDLIgnitionStatus ignitionStatus;

/**
 * References signal "DrStatDrv_B_Actl". Deprecated starting with RPC Spec 7.1.0.
 *
 * @deprecated in SmartDeviceLink 7.1.0
 * @added in SmartDeviceLink 2.0.0
 */
@property (nullable, strong, nonatomic) NSNumber<SDLBool> *driverDoorAjar __deprecated_msg("use doorStatuses instead");

/**
 * References signal "DrStatPsngr_B_Actl". Deprecated starting with RPC Spec 7.1.0.
 *
 * @deprecated in SmartDeviceLink 7.1.0
 * @added in SmartDeviceLink 2.0.0
 */
@property (nullable, strong, nonatomic) NSNumber<SDLBool> *passengerDoorAjar __deprecated_msg("use doorStatuses instead");

/**
 * References signal "DrStatRl_B_Actl". Deprecated starting with RPC Spec 7.1.0.
 *
 * @deprecated in SmartDeviceLink 7.1.0
 * @added in SmartDeviceLink 2.0.0
 */
@property (nullable, strong, nonatomic) NSNumber<SDLBool> *rearLeftDoorAjar __deprecated_msg("use doorStatuses instead");

/**
 * References signal "DrStatRr_B_Actl". Deprecated starting with RPC Spec 7.1.0.
 *
 * @deprecated in SmartDeviceLink 7.1.0
 * @added in SmartDeviceLink 2.0.0
 */
@property (nullable, strong, nonatomic) NSNumber<SDLBool> *rearRightDoorAjar __deprecated_msg("use doorStatuses instead");

/**
 * Provides status for doors if Ajar/Closed/Locked
 * {"array_min_size": 0, "array_max_size": 100}
 *
 * @added in SmartDeviceLink 7.1.0
 */
@property (nullable, strong, nonatomic) NSArray<SDLDoorStatus *> *doorStatuses;

/**
 * Provides status for trunk/hood/etc. if Ajar/Closed/Locked
 * {"array_min_size": 0, "array_max_size": 100}
 *
 * @added in SmartDeviceLink 7.1.0
 */
@property (nullable, strong, nonatomic) NSArray<SDLGateStatus *> *gateStatuses;

/**
 * Provides status for roof/convertible roof/sunroof/moonroof etc., if Closed/Ajar/Removed etc.
 * {"array_min_size": 0, "array_max_size": 100}
 *
 * @added in SmartDeviceLink 7.1.0
 */
@property (nullable, strong, nonatomic) NSArray<SDLRoofStatus *> *roofStatuses;

@end

NS_ASSUME_NONNULL_END