Files
UnrealEngineUWP/Engine/Source/Developer/CollisionAnalyzer/Public/ICollisionAnalyzer.h
christopher waters f8147b1889 Full set of fixes for non-unity non-pch builds after EngineTypes cleanup. This includes adjusting previous build fixes that introduced new includes that weren't actually necessary. Restored a few includes and wrapped them in UE_ENABLE_INCLUDE_ORDER_DEPRECATED_IN_5_1 checks to maintain compatability.
Also includes fixes for other build issues as it's hard to separate them all.

#jira too many to list
#rb none
#preflight 6247d21073665f7d5e6c5a6c

[CL 19600818 by christopher waters in ue5-main branch]
2022-04-02 01:04:02 -04:00

79 lines
1.4 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "Engine/EngineTypes.h"
class SWidget;
struct FCollisionObjectQueryParams;
struct FCollisionResponseParams;
struct FHitResult;
/** Enum to describe type of the query */
namespace ECAQueryType
{
enum Type
{
Raycast,
GeomSweep,
GeomOverlap
};
}
/** Enum to describe shape of the query */
namespace ECAQueryShape
{
enum Type
{
Sphere,
Box,
Capsule,
Convex
};
}
/** Enum to describe the mode of query performed */
namespace ECAQueryMode
{
enum Type
{
Test,
Single,
Multi
};
}
class ICollisionAnalyzer
{
public:
/** Virtual destructor */
virtual ~ICollisionAnalyzer() {}
/** */
virtual void CaptureQuery(
const FVector& Start,
const FVector& End,
const FQuat& Rot,
ECAQueryType::Type QueryType,
ECAQueryShape::Type QueryShape,
ECAQueryMode::Type QueryMode,
const FVector& Dims,
ECollisionChannel TraceChannel,
const struct FCollisionQueryParams& Params,
const FCollisionResponseParams& ResponseParams,
const FCollisionObjectQueryParams& ObjectParams,
const TArray<FHitResult>& Results,
const TArray<FHitResult>& TouchAllResults,
double CPUTime) = 0;
/** Returns a new Collision Analyzer widget. */
virtual TSharedPtr<SWidget> SummonUI() = 0;
/** */
virtual void TickAnalyzer(UWorld* InWorld) = 0;
/** */
virtual bool IsRecording() = 0;
};