UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
DataflowDebugDrawInterface.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "Math/MathFwd.h"
6#include "Containers/Array.h"
8
10
13{
14 virtual ~IDataflowDebugDrawObject() = default;
15
16 static FName StaticType() { return FName("IDataflowDebugDrawObject"); }
17
19 virtual bool IsA(FName InType) const {return false;}
20};
21
23{
24public:
25
27
28 virtual ~IDataflowDebugDrawInterface() = default;
29
30 // State management
31 virtual void SetColor(const FLinearColor& InColor) = 0;
32 virtual void SetPointSize(float Size) = 0;
33 virtual void SetLineWidth(double Width) = 0;
34 virtual void SetWireframe(bool bInWireframe) = 0;
35 virtual void SetShaded(bool bInShaded) = 0;
36 virtual void SetTranslucent(bool bInShadedTranslucent) = 0;
37 virtual void SetForegroundPriority() = 0;
38 virtual void SetWorldPriority() = 0;
39 virtual void ResetAllState() = 0;
40
43 virtual void DrawPoint(const FVector& Position) = 0;
44 virtual void DrawLine(const FVector& Start, const FVector& End) const = 0;
45 virtual void DrawText3d(const FString& String, const FVector& Location) const = 0;
46
48 {
49 virtual ~IDebugDrawMesh() = default;
50
51 virtual int32 GetMaxVertexIndex() const = 0;
52 virtual bool IsValidVertex(int32 VertexIndex) const = 0;
53 virtual FVector GetVertexPosition(int32 VertexIndex) const = 0;
54 virtual FVector GetVertexNormal(int32 VertexIndex) const = 0;
55
56 virtual int32 GetMaxTriangleIndex() const = 0;
57 virtual bool IsValidTriangle(int32 TriangleIndex) const = 0;
58 virtual FIntVector3 GetTriangle(int32 TriangleIndex) const = 0;
59 };
60
61 virtual void DrawMesh(const IDebugDrawMesh& Mesh) const = 0;
62
63 virtual void DrawBox(const FVector& Extents, const FQuat& Rotation, const FVector& Center, double UniformScale) const = 0;
64 virtual void DrawSphere(const FVector& Center, double Radius) const = 0;
65 virtual void DrawCapsule(const FVector& Center, const double& Radius, const double& HalfHeight, const FVector& XAxis, const FVector& YAxis, const FVector &ZAxis) const = 0;
66
67 virtual void DrawOverlayText(const FString& InString) = 0;
68 virtual FString GetOverlayText() const = 0;
69
72
74 virtual const FDataflowElementsType& GetDataflowElements() const = 0;
75
76 // TODO: More draw functions
77
78};
79
80
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
uint32 Size
Definition VulkanMemory.cpp:4034
Definition NameTypes.h:617
Definition RefCounting.h:252
Definition DataflowDebugDrawInterface.h:23
virtual void DrawBox(const FVector &Extents, const FQuat &Rotation, const FVector &Center, double UniformScale) const =0
virtual void ReservePoints(int32 NumAdditionalPoints)=0
virtual void SetPointSize(float Size)=0
virtual void DrawPoint(const FVector &Position)=0
virtual void SetLineWidth(double Width)=0
virtual void SetForegroundPriority()=0
virtual void DrawOverlayText(const FString &InString)=0
virtual void SetTranslucent(bool bInShadedTranslucent)=0
virtual void SetShaded(bool bInShaded)=0
virtual void DrawCapsule(const FVector &Center, const double &Radius, const double &HalfHeight, const FVector &XAxis, const FVector &YAxis, const FVector &ZAxis) const =0
virtual void DrawMesh(const IDebugDrawMesh &Mesh) const =0
virtual void DrawLine(const FVector &Start, const FVector &End) const =0
virtual void DrawText3d(const FString &String, const FVector &Location) const =0
virtual const FDataflowElementsType & GetDataflowElements() const =0
virtual ~IDataflowDebugDrawInterface()=default
virtual void ResetAllState()=0
virtual void DrawSphere(const FVector &Center, double Radius) const =0
virtual void SetColor(const FLinearColor &InColor)=0
virtual FString GetOverlayText() const =0
virtual void DrawObject(const TRefCountPtr< IDataflowDebugDrawObject > &Object)=0
virtual void SetWireframe(bool bInWireframe)=0
virtual void SetWorldPriority()=0
virtual FDataflowElementsType & ModifyDataflowElements()=0
Definition Array.h:670
Definition RefCounting.h:454
Definition DataflowElement.h:12
Definition Color.h:48
Definition DataflowDebugDrawInterface.h:48
virtual FIntVector3 GetTriangle(int32 TriangleIndex) const =0
virtual int32 GetMaxVertexIndex() const =0
virtual FVector GetVertexPosition(int32 VertexIndex) const =0
virtual bool IsValidTriangle(int32 TriangleIndex) const =0
virtual FVector GetVertexNormal(int32 VertexIndex) const =0
virtual int32 GetMaxTriangleIndex() const =0
virtual bool IsValidVertex(int32 VertexIndex) const =0
Definition DataflowDebugDrawInterface.h:13
virtual ~IDataflowDebugDrawObject()=default
static FName StaticType()
Definition DataflowDebugDrawInterface.h:16
virtual bool IsA(FName InType) const
Definition DataflowDebugDrawInterface.h:19