//
// © 2018-2020 Qualcomm Technologies, Inc. and/or its subsidiaries. All rights reserved.
//

#import <Foundation/Foundation.h>
@class IoTPlayerGroup;
@class IoTPlayer;
@class IoTClient;
@protocol IoTAppListenerProtocol;

NS_ASSUME_NONNULL_BEGIN

@interface IoTPlayerGroupManager : NSObject

- (void)forceReset;

- (NSArray<IoTPlayerGroup *> *)getPlayerGroups;
- (nullable IoTPlayerGroup *)playerGroupForPlayer:(IoTPlayer *)player;
- (nullable IoTPlayerGroup *)playerGroupWithID:(NSString *)groupID;

- (void)processNewPlayer:(IoTPlayer *)player
                  client:(IoTClient *)client
             appListener:(id<IoTAppListenerProtocol>)appListener;

- (void)processDeadPlayer:(IoTPlayer *)player
              appListener:(id<IoTAppListenerProtocol>)appListener;

- (void)processUpdatedPlayer:(IoTPlayer *)player
                      client:(IoTClient *)client
                 appListener:(id<IoTAppListenerProtocol>)appListener;

@end

NS_ASSUME_NONNULL_END
