# PhotoPlayerDelegate

    @objc public protocol PhotoPlayerDelegate: class

The Photo Player delegate protocol defines the event methods available for a Photo.

### All Optional Callbacks

- `onPlayerInitialized()`

  event occurs when Photo is shared with TV for the first time or after audio/video share.

  #### Declaration

  Swift

      @objc optional func onPlayerInitialized()

- `onPlayerChange(_:)`

  event occurs when different type of media is shared with TV. (Photo is shared after audio/video share)

  #### Declaration

  Swift

      @objc optional func onPlayerChange(_ playerType: String)

  #### Parameters

  `playerType` | current player type (photo/audio/video)

- `onPlay()`

  event occurs when paused photo player list is played.

  #### Declaration

  Swift

      @objc optional func onPlay()

- `onPause()`

  event occurs on photo player list pause.

  #### Declaration

  Swift

      @objc optional func onPause()

- `onStop()`

  event occurs on photo player list stop.

  #### Declaration

  Swift

      @objc optional func onStop()

- `onMute()`

  event occurs on Player mute.

  #### Declaration

  Swift

      @objc optional func onMute()

- `onUnMute()`

  event occurs on Player unMute.

  #### Declaration

  Swift

      @objc optional func onUnMute()

- `onNext()`

  event occurs when Player plays next content.

  #### Declaration

  Swift

      @objc optional func onNext()

- `onPrevious()`

  event occurs when Player plays previous content.

  #### Declaration

  Swift

      @objc optional func onPrevious()

- `onControlStatus(_:muteStatus:)`

  provides the status of play controls like volume, mute/unmute and mode of player like single or repeat all - parameter volLevel: player volume level - parameter muteStatus: player mute status - parameter shuffleStatus: player shuffle status - parameter mode: player mode single or repeat all

  #### Declaration

  Swift

      @objc optional func onControlStatus(_ volLevel: Int, muteStatus: Bool)

  #### Parameters

  `volLevel` | player volume level
  `muteStatus` | player mute status
  `shuffleStatus` | player shuffle status
  `mode` | player mode single or repeat all

- `onVolumeChange(_:)`

  event occurs on player volume change.

  #### Declaration

  Swift

      @objc optional func onVolumeChange(_ volLevel: Int)

  #### Parameters

  `volLevel` | player volume to be set.

- `onAddToList(_:)`

  event occurs on photo(image) addition in TV queue(player list).

  #### Declaration

  Swift

      @objc optional func onAddToList(_ enqueuedItem: [String: AnyObject])

  #### Parameters

  `enqueuedItem` | enqueued photo item.

- `onRemoveFromList(_:)`

  event occurs on photo remove from TV queue(player list).

  #### Declaration

  Swift

      @objc optional func onRemoveFromList(_ dequeuedItem: [String: AnyObject])

  #### Parameters

  `dequeuedItem` | dequeued photo item.

- `onClearList()`

  event occurs on TV queue(player list) deletion.

  #### Declaration

  Swift

      @objc optional func onClearList()

- `onGetList(_:)`

  event occurs when player list(TV queue) is recieved.

  #### Declaration

  Swift

      @objc optional func onGetList(_ queueList: [String: AnyObject])

  #### Parameters

  `queueList` | play list of TV

- `onCurrentPlaying(_:)`

  occurs when new photo is shared with TV.

  #### Declaration

  Swift

      @objc optional func onCurrentPlaying(_ currentItem: [String: AnyObject])

  #### Parameters

  `currentItem` | current shared item.

- `onApplicationSuspend()`

  occurs when TV Application/widget goes into background.

  #### Declaration

  Swift

      @objc optional func onApplicationSuspend()

- `onApplicationResume()`

  occurs when TV Application/widget comes in foreground.

  #### Declaration

  Swift

      @objc optional func onApplicationResume()

- `onError(_:)`

  occurs when error is occured in playing Audio

  #### Declaration

  Swift

      @objc optional func onError(_ error: NSError)

  #### Parameters

  `error` | eror details