// SDLSetMediaClockTimer.h
//
#import "SDLRPCRequest.h"
#import "SDLUpdateMode.h"
@class SDLStartTime;
/**
* Sets the media clock/timer value and the update method (e.g.count-up,
* count-down, etc.)
*
* Function Group: Base
* HMILevel needs to be FULL, LIMITIED or BACKGROUND
*
*
* Since SmartDeviceLink 1.0
*/
NS_ASSUME_NONNULL_BEGIN
@interface SDLSetMediaClockTimer : SDLRPCRequest
- (instancetype)initWithUpdateMode:(SDLUpdateMode)updateMode hours:(UInt8)hours minutes:(UInt8)minutes seconds:(UInt8)seconds;
- (instancetype)initWithUpdateMode:(SDLUpdateMode)updateMode;
/**
* @abstract A Start Time with specifying hour, minute, second values
*
* @discussion A startTime object with specifying hour, minute, second values
*
* Notes:
*
* - If "updateMode" is COUNTUP or COUNTDOWN, this parameter
* must be provided
* - Will be ignored for PAUSE/RESUME and CLEAR
*
*/
@property (strong, nonatomic, nullable) SDLStartTime *startTime;
/**
* @abstract An END time of type SDLStartTime, specifying hour, minute, second values
*
* @discussion An SDLStartTime object with specifying hour, minute, second values
*/
@property (strong, nonatomic, nullable) SDLStartTime *endTime;
/**
* @abstract The media clock/timer update mode (COUNTUP/COUNTDOWN/PAUSE/RESUME)
*
* @discussion a Enumeration value (COUNTUP/COUNTDOWN/PAUSE/RESUME)
*
* Notes:
*
* - When updateMode is PAUSE, RESUME or CLEAR, the start time value
* is ignored
* - When updateMode is RESUME, the timer resumes counting from
* the timer's value when it was paused
*
*/
@property (strong, nonatomic) SDLUpdateMode updateMode;
@end
NS_ASSUME_NONNULL_END