74 lines
2.0 KiB
C++
74 lines
2.0 KiB
C++
// Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
|
|
#pragma once
|
|
#include "UObject/Class.h"
|
|
#include "OculusXRAnchorComponents.h"
|
|
#include "OculusXRSceneComponents.generated.h"
|
|
|
|
UCLASS(Blueprintable)
|
|
class OCULUSXRSCENE_API UOculusXRPlaneAnchorComponent : public UOculusXRBaseAnchorComponent
|
|
{
|
|
GENERATED_BODY()
|
|
public:
|
|
UOculusXRPlaneAnchorComponent()
|
|
{
|
|
Type = EOculusXRSpaceComponentType::ScenePlane;
|
|
}
|
|
|
|
UFUNCTION(BlueprintCallable, Category = "OculusXR|SpatialAnchor")
|
|
bool GetPositionAndSize(FVector& outPosition, FVector& outSize) const;
|
|
};
|
|
|
|
UCLASS(Blueprintable)
|
|
class OCULUSXRSCENE_API UOculusXRVolumeAnchorComponent : public UOculusXRBaseAnchorComponent
|
|
{
|
|
GENERATED_BODY()
|
|
public:
|
|
UOculusXRVolumeAnchorComponent()
|
|
{
|
|
Type = EOculusXRSpaceComponentType::SceneVolume;
|
|
}
|
|
|
|
UFUNCTION(BlueprintCallable, Category = "OculusXR|SpatialAnchor")
|
|
bool GetPositionAndSize(FVector& outPosition, FVector& outSize) const;
|
|
};
|
|
|
|
UCLASS(Blueprintable)
|
|
class OCULUSXRSCENE_API UOculusXRSemanticClassificationAnchorComponent : public UOculusXRBaseAnchorComponent
|
|
{
|
|
GENERATED_BODY()
|
|
public:
|
|
UOculusXRSemanticClassificationAnchorComponent()
|
|
{
|
|
Type = EOculusXRSpaceComponentType::SemanticClassification;
|
|
}
|
|
|
|
UFUNCTION(BlueprintCallable, Category = "OculusXR|SpatialAnchor")
|
|
bool GetSemanticClassifications(TArray<FString>& outClassifications) const;
|
|
};
|
|
|
|
UCLASS(Blueprintable)
|
|
class OCULUSXRSCENE_API UOculusXRRoomLayoutAnchorComponent : public UOculusXRBaseAnchorComponent
|
|
{
|
|
GENERATED_BODY()
|
|
public:
|
|
UOculusXRRoomLayoutAnchorComponent()
|
|
{
|
|
Type = EOculusXRSpaceComponentType::RoomLayout;
|
|
}
|
|
|
|
UFUNCTION(BlueprintCallable, Category = "OculusXR|SpatialAnchor")
|
|
bool GetRoomLayout(FOculusXRUUID& outFloorUUID, FOculusXRUUID& outCeilingUUID, TArray<FOculusXRUUID>& outWallsUUIDs) const;
|
|
};
|
|
|
|
UCLASS(Blueprintable)
|
|
class OCULUSXRSCENE_API UOculusXRTriangleMeshAnchorComponent : public UOculusXRBaseAnchorComponent
|
|
{
|
|
GENERATED_BODY()
|
|
public:
|
|
UOculusXRTriangleMeshAnchorComponent()
|
|
{
|
|
Type = EOculusXRSpaceComponentType::TriangleMesh;
|
|
}
|
|
};
|