Files
UnrealEngineUWP/Engine/Source/Developer/LogVisualizer/Private/VisualLoggerRenderingActor.h
sebastian kowalczyk 17d8b3e007 Added multiple logs selection to Visual Logger tool. It should partially fill UE-16336 task.
[CL 2573695 by sebastian kowalczyk in Main branch]
2015-06-02 06:51:31 -04:00

62 lines
1.7 KiB
C++

// Copyright 1998-2015 Epic Games, Inc. All Rights Reserved.
#pragma once
#include "DebugRenderSceneProxy.h"
#include "VisualLoggerRenderingActor.generated.h"
/**
* Transient actor used to draw visual logger data on level
*/
DECLARE_MULTICAST_DELEGATE_OneParam(FOnSelectionChanged, class AActor*);
UCLASS(config = Engine, NotBlueprintable, Transient)
class LOGVISUALIZER_API AVisualLoggerRenderingActor : public AActor
{
struct FTimelineDebugShapes
{
TArray<FDebugRenderSceneProxy::FDebugLine> Lines;
TArray<FDebugRenderSceneProxy::FCone> Cones;
TArray<FDebugRenderSceneProxy::FDebugBox> Boxes;
TArray<FDebugRenderSceneProxy::FSphere> Points;
TArray<FDebugRenderSceneProxy::FMesh> Meshes;
TArray<FDebugRenderSceneProxy::FText3d> Texts;
TArray<FDebugRenderSceneProxy::FWireCylinder> Cylinders;
TArray<FDebugRenderSceneProxy::FCapsule> Capsles;
TArray<FVector> LogEntriesPath;
void Reset()
{
Lines.Reset();
Cones.Reset();
Boxes.Reset();
Points.Reset();
Meshes.Reset();
Texts.Reset();
Cylinders.Reset();
Capsles.Reset();
LogEntriesPath.Reset();
}
};
public:
GENERATED_UCLASS_BODY()
void OnItemSelectionChanged(const FVisualLogDevice::FVisualLogEntryItem& EntryItem);
void ObjectSelectionChanged(TArray<TSharedPtr<class STimeline> >& TimeLines);
void GetDebugShapes(const FVisualLogDevice::FVisualLogEntryItem& EntryItem, FTimelineDebugShapes& DebugShapes);
private:
void AddDebugRendering();
public:
UPrimitiveComponent* RenderingComponent;
FTimelineDebugShapes PrimaryDebugShapes;
FTimelineDebugShapes SecondaryDebugShapes;
FTimelineDebugShapes TestDebugShapes;
TArray<TSharedPtr<class STimeline> > SelectedTimeLines;
};