Classes

The following classes are available globally.

  • An implementation of IMAContentPlayhead for AVPlayer. Use this class to provide content tracking if your content player of choice is an AVPlayer or its subclass.

    Declaration

    Swift

    class IMAAVPlayerContentPlayhead : NSObject, IMAContentPlayhead

    Objective-C

    @interface IMAAVPlayerContentPlayhead : NSObject <IMAContentPlayhead>
  • An implementation of the IMAVideoDisplay protocol. This object is intended to be initialized with the content player, and will reuse the player for playing ads.

    Declaration

    Swift

    class IMAAVPlayerVideoDisplay : NSObject, IMAVideoDisplay

    Objective-C

    @interface IMAAVPlayerVideoDisplay : NSObject <IMAVideoDisplay>
  • Data object representing a single ad.

    Declaration

    Swift

    class IMAAd : NSObject

    Objective-C

    @interface IMAAd : NSObject
  • The IMAAdDisplayContainer is responsible for managing the ad container view and companion ad slots used for ad playback.

    Declaration

    Swift

    class IMAAdDisplayContainer

    Objective-C

    @interface IMAAdDisplayContainer : NSObject
  • Surfaces an error that occurred during ad loading or playing.

    Declaration

    Swift

    class IMAAdError : NSObject

    Objective-C

    @interface IMAAdError : NSObject
  • Simple data class used to transport ad playback information.

    Declaration

    Swift

    class IMAAdEvent : NSObject

    Objective-C

    @interface IMAAdEvent : NSObject
  • Simple data object containing podding metadata.

    Declaration

    Swift

    class IMAAdPodInfo : NSObject

    Objective-C

    @interface IMAAdPodInfo : NSObject
  • Ad data that is returned when the ads loader loads the ad.

    Declaration

    Swift

    class IMAAdsLoadedData : NSObject

    Objective-C

    @interface IMAAdsLoadedData : NSObject
  • Ad error data that is returned when the ads loader fails to load the ad.

    Declaration

    Swift

    class IMAAdLoadingErrorData : NSObject

    Objective-C

    @interface IMAAdLoadingErrorData : NSObject
  • The IMAAdsLoader class allows the requesting of ads from the ad server. Use the delegate to receive the loaded ads or loading error in case of failure.

    Declaration

    Swift

    class IMAAdsLoader : NSObject

    Objective-C

    @interface IMAAdsLoader : NSObject
  • The IMAAdsManager class is responsible for playing ads.

    Declaration

    Swift

    class IMAAdsManager : NSObject

    Objective-C

    @interface IMAAdsManager : NSObject
  • Set of properties that influence how ads are rendered.

    Declaration

    Swift

    class IMAAdsRenderingSettings

    Objective-C

    @interface IMAAdsRenderingSettings : NSObject
  • Data class describing the ad request.

    Declaration

    Swift

    class IMAAdsRequest : NSObject

    Objective-C

    @interface IMAAdsRequest : NSObject
  • Ad slot for companion ads. The SDK will put a subview inside the provided UIView container. The companion will be matched to the width and height provided here.

    Declaration

    Swift

    class IMACompanionAdSlot

    Objective-C

    @interface IMACompanionAdSlot : NSObject
  • Data object representation of a cuepoint for a single ad break.

    Declaration

    Swift

    class IMACuepoint : NSObject

    Objective-C

    @interface IMACuepoint : NSObject
  • A proxy class for allowing the SDK to detect entering and exiting Picture-in-Picture.

    To use the proxy, create an instance of IMAPictureInPictureProxy with the Picture-in-Picture delegate as an argument, and then simply set the Picture-in-Picture controller’s delegate to the proxy. See Picture in Picture for more details.

    Declaration

    Swift

    class IMAPictureInPictureProxy : NSProxy

    Objective-C

    @interface IMAPictureInPictureProxy
        : NSProxy <AVPictureInPictureControllerDelegate,
                   AVPlayerViewControllerDelegate>
  • The IMASettings class stores SDK wide settings.

    Declaration

    Swift

    class IMASettings : NSObject, NSCopying

    Objective-C

    @interface IMASettings : NSObject <NSCopying>
  • The IMAStreamManager class is responsible for playing streams.

    Declaration

    Swift

    class IMAStreamManager : NSObject

    Objective-C

    @interface IMAStreamManager : NSObject
  • Data class describing the stream request.

    Declaration

    Swift

    class IMAStreamRequest : NSObject

    Objective-C

    @interface IMAStreamRequest : NSObject