Files
UnrealEngineUWP/Engine/Source/Runtime/GameLiveStreaming/QueryLiveStreamsCallbackProxy.h
Mike Fricker 1a24188e92 Live Streaming improvements
- New API for querying a list of existing live stream URLs for any game
- New "QueryLiveStreams" Blueprint node in the "Live Streaming" category (latent)
- Initial API support for sending and receiving online chat messages (no blueprint support yet)
- Fixed broadcasting console commands not unregistered when module is unloaded
- Various code clean-ups

[CL 2124665 by Mike Fricker in Main branch]
2014-07-02 11:33:24 -04:00

48 lines
1.6 KiB
C++

// Copyright 1998-2014 Epic Games, Inc. All Rights Reserved.
#pragma once
#include "OnlineBlueprintCallProxyBase.h"
#include "QueryLiveStreamsCallbackProxy.generated.h"
USTRUCT( BlueprintType )
struct FBlueprintLiveStreamInfo
{
GENERATED_USTRUCT_BODY()
/** Name of the game that is streaming */
UPROPERTY( EditAnywhere, Category="LiveStreaming" )
FString GameName;
/** The title of the stream itself */
UPROPERTY( EditAnywhere, Category="LiveStreaming" )
FString StreamName;
/** URL for the stream */
UPROPERTY( EditAnywhere, Category="LiveStreaming" )
FString URL;
};
DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams( FOnQueryLiveStreamsCompleted, const TArray<FBlueprintLiveStreamInfo>&, LiveStreams, bool, bWasSuccessful );
UCLASS()
class UQueryLiveStreamsCallbackProxy : public UOnlineBlueprintCallProxyBase
{
GENERATED_UCLASS_BODY()
// Called when the asynchronous request for live streams completes, passing along the list of live streams currently active, along with a boolean value that indicates whether the request was successful at all
UPROPERTY( BlueprintAssignable )
FOnQueryLiveStreamsCompleted OnQueriedLiveStreams;
/** Requests a list of live internet streams for the specified game name. This will usually hit the internet so it could take a second or two. */
UFUNCTION( BlueprintCallable, Category="LiveStreaming", meta=( BlueprintInternalUseOnly="true" ) )
static UQueryLiveStreamsCallbackProxy* QueryLiveStreams( const FString& GameName );
/** UOnlineBlueprintCallProxyBase interface */
virtual void Activate() override;
protected:
/** Name of the game that we're querying about */
FString GameName;
};