添加ue蓝图调用c++ 查询想定

This commit is contained in:
jiegeaiai 2025-02-18 01:21:38 +08:00
parent 18b9e8c09f
commit 5580668708
21 changed files with 934 additions and 500 deletions

View File

@ -1,68 +1,68 @@
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\Cesium3DTilesetLoadFailureDetails.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumCamera.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\Cesium3DTileset.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumEncodedMetadataComponent.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumDebugColorizeTilesRasterOverlay.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\Cesium3DTilesetLoadFailureDetails.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumCreditSystem.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumCartographicPolygon.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumBingMapsRasterOverlay.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumEllipsoid.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumFeaturesMetadataComponent.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumCameraManager.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumBingMapsRasterOverlay.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumFeatureIdAttribute.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumDebugColorizeTilesRasterOverlay.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumGeoreference.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumMetadataPickingBlueprintLibrary.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumFeatureIdSet.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumFeatureIdTexture.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumGlobeAnchoredActorComponent.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumIonRasterOverlay.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumMetadataPrimitive.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumCreditSystem.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumMetadataEncodingDetails.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumGlobeAnchorComponent.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumMetadataUtilityBlueprintLibrary.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumModelMetadata.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumOriginShiftComponent.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumIonRasterOverlay.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumMetadataValue.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumMetadataValueType.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumPropertyArray.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumMetadataPropertyDetails.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumMetadataPrimitive.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumPointCloudShading.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumMetadataUtilityBlueprintLibrary.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumPrimitiveMetadata.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumPropertyTable.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumPolygonRasterOverlay.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumPropertyArrayBlueprintLibrary.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumOriginShiftComponent.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumPrimitiveFeatures.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumModelMetadata.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumPropertyTexture.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumPropertyTextureProperty.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumPropertyTableProperty.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumRasterOverlayLoadFailureDetails.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumRuntimeSettings.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumPrimitiveFeatures.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumSubLevel.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumRasterOverlay.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumPropertyTable.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumSampleHeightMostDetailedAsyncAction.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumSubLevelSwitcherComponent.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumRasterOverlay.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumSubLevel.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumTileMapServiceRasterOverlay.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumTileExcluder.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumSampleHeightResult.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumTile.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumTileMapServiceRasterOverlay.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumSampleHeightMostDetailedAsyncAction.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumUrlTemplateRasterOverlay.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumWebMapServiceRasterOverlay.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumWebMapTileServiceRasterOverlay.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\OriginPlacement.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumWgs84Ellipsoid.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CustomDepthParameters.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumWebMapTileServiceRasterOverlay.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\GlobeAwareDefaultPawn.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumFeatureIdAttribute.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumGeoreference.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumMetadataPickingBlueprintLibrary.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumMetadataPropertyDetails.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumEllipsoid.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumCartographicPolygon.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\OriginPlacement.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumUrlTemplateRasterOverlay.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumWebMapServiceRasterOverlay.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumFlyToComponent.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumIonServer.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumPolygonRasterOverlay.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumSubLevelComponent.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumMetadataEncodingDetails.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumEncodedMetadataComponent.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumFeatureIdTexture.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumSunSky.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumTileExcluder.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumPropertyArray.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumRasterOverlayLoadFailureDetails.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumRuntimeSettings.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Public\CesiumSubLevelComponent.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Private\Cesium3DTilesetRoot.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Private\CesiumCreditSystemBPLoader.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Private\CesiumGltfPointsComponent.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Private\CesiumBoundingVolumeComponent.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Private\CesiumGltfPrimitiveComponent.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Private\CesiumPrimitive.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Private\Tests\SampleHeightCallbackReceiver.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Private\CesiumGltfComponent.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Private\CesiumCreditSystemBPLoader.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Private\CesiumMaterialUserData.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Private\CesiumPrimitive.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Private\ScreenCreditsWidget.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Private\Tests\SampleHeightCallbackReceiver.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Private\CesiumBoundingVolumeComponent.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Private\CesiumGltfComponent.h
D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\CesiumRuntime\Private\CesiumGltfPointsComponent.h

View File

@ -0,0 +1,116 @@
// Fill out your copyright notice in the Description page of Project Settings.
#include "DMScenario.h"
#include <DPI.h>
#include <DPItypes.h>
#include "Content.h"
#include "DMRunnable.h"
#include "UEDMPlugin.h"
struct SQLData
{
int64 timestamp;
int32 bc;
std::string yxr;
};
TSharedPtr<FJsonObject> ConvertSQLDataToJson(const SQLData& data)
{
TSharedPtr<FJsonObject> JsonObject = MakeShareable(new FJsonObject());
JsonObject->SetNumberField("timestamp", data.timestamp);
JsonObject->SetNumberField("bc", data.bc);
JsonObject->SetStringField("yxr", FString(data.yxr.c_str()));
return JsonObject;
}
FString ConvertSQLDataVectorToJson(const std::vector<SQLData>& dataVector)
{
TArray<TSharedPtr<FJsonValue>> JsonArray;
for (const SQLData& data : dataVector)
{
TSharedPtr<FJsonObject> JsonObject = ConvertSQLDataToJson(data);
JsonArray.Add(MakeShareable(new FJsonValueObject(JsonObject)));
}
TSharedPtr<FJsonObject> RootObject = MakeShareable(new FJsonObject());
RootObject->SetArrayField("data", JsonArray);
FString JsonString;
TSharedRef<TJsonWriter<TCHAR>> Writer = TJsonWriterFactory<TCHAR>::Create(&JsonString);
FJsonSerializer::Serialize(RootObject.ToSharedRef(), Writer);
return JsonString;
}
TDMScenario::TDMScenario()
{
}
TDMScenario::~TDMScenario()
{
}
TSharedPtr<TDMScenario> TDMScenario::Create()
{
TSharedPtr<TDMScenario> self = MakeShared<TDMScenario>();
return self;
}
void TDMScenario::Query()
{
TSharedPtr<FSQLCommand> sqlCommand = MakeShareable(new FSQLCommand);
sqlCommand->Type = ESQLType::SELECT;
sqlCommand->SQL = "select RQ,BC,YXR from kzdk.RW_BCSJ order by rq ,bc asc;";
sqlCommand->select = [](void* content)
{
sdint8 out_c1 = 0;
sdint4 out_c2 = 0;
sdbyte out_c3[20]= { 0 };
slength out_c1_ind = 0;
slength out_c2_ind = 0;
slength out_c3_ind = 0;
dpi_bind_col(content, 1, DSQL_C_TIMESTAMP, &out_c1, sizeof(out_c1), &out_c1_ind);
dpi_bind_col(content, 2, DSQL_C_SLONG, &out_c2, sizeof(out_c2), &out_c2_ind);
dpi_bind_col(content, 3, DSQL_C_NCHAR, &out_c3, sizeof(out_c3), &out_c3_ind);
ulength row_num = 0;
std::vector<SQLData> tables;
while(dpi_fetch(content, &row_num) != DSQL_NO_DATA)
{
tables.push_back({out_c1, out_c2, (char*)out_c3});
UE_LOG(LogUEDMPlugin, Log, TEXT("RQ=%llu, BC=%d YXR=%s"), out_c1, out_c2, UTF8_TO_TCHAR((char*)out_c3));
}
TSharedPtr<SQLResult> Result = MakeShareable(new SelectResult<SQLData>(std::move(tables)));
return Result;
};
sqlCommand->OnQueryCompleted.BindLambda([](TSharedPtr<SQLResult> Result)
{
SelectResult<SQLData>* sqlData = static_cast<SelectResult<SQLData>*>(Result.Get());
if (!sqlData->succes)
{
UE_LOG(LogUEDMPlugin, Error, TEXT("TDMScenario::Query failed"));
return;
}
FString jsonString = ConvertSQLDataVectorToJson(sqlData->table);
});
auto dmRunnable = FUEDMPluginModule::GetDMRunnable();
if (nullptr == dmRunnable)
{
UE_LOG(LogUEDMPlugin, Error, TEXT("TDMScenario::Query dm runnable is nullptr"));
}
dmRunnable->ExcuteSQL(sqlCommand);
}

View File

@ -0,0 +1,18 @@
// Fill out your copyright notice in the Description page of Project Settings.
#pragma once
#include "CoreMinimal.h"
/**
*
*/
class TDMScenario : public TSharedFromThis<TDMScenario>
{
public:
TDMScenario();
~TDMScenario();
static TSharedPtr<TDMScenario> Create();
void Query();
};

View File

@ -18,46 +18,6 @@ void FUEDMPluginModule::StartupModule()
{
// This code will execute after your module is loaded into memory; the exact timing is specified in the .uplugin file per-module
dmRunnable_ = new FDMRunnable();
struct SQLData
{
int64 timestamp;
int32 bc;
std::string yxr;
};
TSharedPtr<FSQLCommand> sqlCommand = MakeShareable(new FSQLCommand);
sqlCommand->Type = ESQLType::SELECT;
sqlCommand->SQL = "select RQ,BC,YXR from kzdk.RW_BCSJ order by rq ,bc asc;";
sqlCommand->select = [](void* content)
{
sdint8 out_c1 = 0;
sdint4 out_c2 = 0;
sdbyte out_c3[20]= { 0 };
slength out_c1_ind = 0;
slength out_c2_ind = 0;
slength out_c3_ind = 0;
dpi_bind_col(content, 1, DSQL_C_TIMESTAMP, &out_c1, sizeof(out_c1), &out_c1_ind);
dpi_bind_col(content, 2, DSQL_C_SLONG, &out_c2, sizeof(out_c2), &out_c2_ind);
dpi_bind_col(content, 3, DSQL_C_NCHAR, &out_c3, sizeof(out_c3), &out_c3_ind);
ulength row_num = 0;
std::vector<SQLData> tables;
while(dpi_fetch(content, &row_num) != DSQL_NO_DATA)
{
tables.push_back({out_c1, out_c2, (char*)out_c3});
UE_LOG(LogUEDMPlugin, Log, TEXT("RQ=%llu, BC=%d YXR=%s"), out_c1, out_c2, UTF8_TO_TCHAR((char*)out_c3));
}
TSharedPtr<SQLResult> Result = MakeShareable(new SelectResult<SQLData>(std::move(tables)));
return Result;
};
sqlCommand->OnQueryCompleted.BindLambda([](TSharedPtr<SQLResult> Result)
{
SelectResult<SQLData>* sqlData = static_cast<SelectResult<SQLData>*>(Result.Get());
bool s = sqlData->succes;
s = true;
});
dmRunnable_->ExcuteSQL(sqlCommand);
}
void FUEDMPluginModule::ShutdownModule()

View File

@ -0,0 +1,30 @@
// Fill out your copyright notice in the Description page of Project Settings.
#include "UEJSBlueprintFunctionLibrary.h"
#include "DMScenario.h"
#include "UEDMPlugin.h"
bool UUEJSBlueprintFunctionLibrary::JsMessageDispatch(const FString& message)
{
TSharedPtr<FJsonObject>jsonObject;
TSharedRef<TJsonReader<TCHAR>>jsonReader=TJsonReaderFactory<TCHAR>::Create(message);
bool success = FJsonSerializer::Deserialize(jsonReader, jsonObject);
if (!success)
{
UE_LOG(LogUEDMPlugin, Warning, TEXT("message parse failed, message=%s"), *message);
return false;
}
FString func = jsonObject->GetStringField(TEXT("command"));
if (TEXT("LoadTask") == func)
{
auto Scenario = TDMScenario::Create();
Scenario->Query();
}
return true;
}

View File

@ -0,0 +1,22 @@
// Fill out your copyright notice in the Description page of Project Settings.
#pragma once
#include "CoreMinimal.h"
#include "Kismet/BlueprintFunctionLibrary.h"
#include "UEJSBlueprintFunctionLibrary.generated.h"
/**
*
*/
UCLASS()
class UEDMPLUGIN_API UUEJSBlueprintFunctionLibrary : public UBlueprintFunctionLibrary
{
GENERATED_BODY()
public:
UFUNCTION(BlueprintCallable, Category="JsMessageDispatch")
bool JsMessageDispatch(const FString& message);
// UFUNCTION(BlueprintImplementableEvent, Category = "JsMessageCallbackEvent")
// void JsMessageCallbackEvent(const FString& message);
};

View File

@ -40,6 +40,8 @@ public class UEDMPlugin : ModuleRules
"Engine",
"Slate",
"SlateCore",
"Json",
"JsonUtilities",
// ... add private dependencies that you statically link with here ...
}
);

View File

@ -2,11 +2,11 @@
"RemapUnityFiles":
{
"Module.WarplanePlugin.cpp.obj": [
"TrackActor.gen.cpp.obj",
"TrackActor.cpp.obj",
"WarplanePlugin.cpp.obj",
"StageTypes.gen.cpp.obj",
"WarplanePlugin.init.gen.cpp.obj"
"TrackActor.gen.cpp.obj",
"WarplanePlugin.init.gen.cpp.obj",
"TrackActor.cpp.obj",
"WarplanePlugin.cpp.obj"
]
}
}

View File

@ -1,4 +1,6 @@
// This file is automatically generated at compile-time to include some subset of the user-created cpp files.
#include "D:/Project/bmh/FlightSimulation/Plugins/WarplanePlugin/Intermediate/Build/Win64/UnrealEditor/Inc/WarplanePlugin/UHT/StageTypes.gen.cpp"
#include "D:/Project/bmh/FlightSimulation/Plugins/WarplanePlugin/Intermediate/Build/Win64/UnrealEditor/Inc/WarplanePlugin/UHT/TrackActor.gen.cpp"
#include "D:/Project/bmh/FlightSimulation/Plugins/WarplanePlugin/Intermediate/Build/Win64/UnrealEditor/Inc/WarplanePlugin/UHT/WarplanePlugin.init.gen.cpp"
#include "D:/Project/bmh/FlightSimulation/Plugins/WarplanePlugin/Source/WarplanePlugin/Private/TrackActor.cpp"
#include "D:/Project/bmh/FlightSimulation/Plugins/WarplanePlugin/Source/WarplanePlugin/Private/WarplanePlugin.cpp"

View File

@ -6,6 +6,9 @@
"PCH": "d:\\project\\bmh\\flightsimulation\\intermediate\\build\\win64\\x64\\flightsimulationeditor\\development\\unrealed\\sharedpch.unrealed.project.valapi.cpp20.h.pch",
"Includes": [
"d:\\project\\bmh\\flightsimulation\\plugins\\warplaneplugin\\intermediate\\build\\win64\\x64\\unrealeditor\\development\\warplaneplugin\\definitions.warplaneplugin.h",
"d:\\project\\bmh\\flightsimulation\\plugins\\warplaneplugin\\intermediate\\build\\win64\\unrealeditor\\inc\\warplaneplugin\\uht\\stagetypes.gen.cpp",
"d:\\project\\bmh\\flightsimulation\\plugins\\warplaneplugin\\source\\warplaneplugin\\public\\stagetypes.h",
"d:\\project\\bmh\\flightsimulation\\plugins\\warplaneplugin\\intermediate\\build\\win64\\unrealeditor\\inc\\warplaneplugin\\uht\\stagetypes.generated.h",
"d:\\project\\bmh\\flightsimulation\\plugins\\warplaneplugin\\intermediate\\build\\win64\\unrealeditor\\inc\\warplaneplugin\\uht\\trackactor.gen.cpp",
"d:\\project\\bmh\\flightsimulation\\plugins\\warplaneplugin\\source\\warplaneplugin\\public\\trackactor.h",
"c:\\program files\\epic games\\ue_5.4\\engine\\source\\runtime\\engine\\classes\\components\\splinecomponent.h",
@ -167,9 +170,8 @@
"d:\\project\\bmh\\flightsimulation\\plugins\\cesiumforunreal_5.4\\intermediate\\build\\win64\\unrealeditor\\inc\\cesiumruntime\\uht\\originplacement.generated.h",
"d:\\project\\bmh\\flightsimulation\\plugins\\cesiumforunreal_5.4\\intermediate\\build\\win64\\unrealeditor\\inc\\cesiumruntime\\uht\\cesiumgeoreference.generated.h",
"d:\\project\\bmh\\flightsimulation\\plugins\\warplaneplugin\\intermediate\\build\\win64\\unrealeditor\\inc\\warplaneplugin\\uht\\trackactor.generated.h",
"d:\\project\\bmh\\flightsimulation\\plugins\\warplaneplugin\\intermediate\\build\\win64\\unrealeditor\\inc\\warplaneplugin\\uht\\warplaneplugin.init.gen.cpp",
"d:\\project\\bmh\\flightsimulation\\plugins\\warplaneplugin\\source\\warplaneplugin\\private\\trackactor.cpp",
"d:\\project\\bmh\\flightsimulation\\plugins\\warplaneplugin\\source\\warplaneplugin\\public\\stagetypes.h",
"d:\\project\\bmh\\flightsimulation\\plugins\\warplaneplugin\\intermediate\\build\\win64\\unrealeditor\\inc\\warplaneplugin\\uht\\stagetypes.generated.h",
"d:\\project\\bmh\\flightsimulation\\plugins\\warplaneplugin\\source\\warplaneplugin\\private\\warplaneplugin.cpp",
"d:\\project\\bmh\\flightsimulation\\plugins\\warplaneplugin\\source\\warplaneplugin\\public\\warplaneplugin.h"
],

View File

@ -37,8 +37,6 @@
/FUNCTIONPADMIN:6
"D:\Project\bmh\FlightSimulation\Intermediate\Build\Win64\x64\FlightSimulationEditor\Development\UnrealEd\SharedPCH.UnrealEd.Project.ValApi.Cpp20.h.obj"
"D:\Project\bmh\FlightSimulation\Plugins\WarplanePlugin\Intermediate\Build\Win64\x64\UnrealEditor\Development\WarplanePlugin\Module.WarplanePlugin.cpp.obj"
"D:\Project\bmh\FlightSimulation\Plugins\WarplanePlugin\Intermediate\Build\Win64\x64\UnrealEditor\Development\WarplanePlugin\StageTypes.gen.cpp.obj"
"D:\Project\bmh\FlightSimulation\Plugins\WarplanePlugin\Intermediate\Build\Win64\x64\UnrealEditor\Development\WarplanePlugin\WarplanePlugin.init.gen.cpp.obj"
"D:\Project\bmh\FlightSimulation\Plugins\WarplanePlugin\Intermediate\Build\Win64\x64\UnrealEditor\Development\WarplanePlugin\Default.rc2.res"
"D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\ThirdParty\lib\Windows-AMD64-Release\absl_bad_any_cast_impl.lib"
"D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\ThirdParty\lib\Windows-AMD64-Release\absl_bad_optional_access.lib"

View File

@ -37,6 +37,8 @@
/FUNCTIONPADMIN:6
"D:\Project\bmh\FlightSimulation\Intermediate\Build\Win64\x64\FlightSimulationEditor\Development\UnrealEd\SharedPCH.UnrealEd.Project.ValApi.Cpp20.h.obj"
"D:\Project\bmh\FlightSimulation\Plugins\WarplanePlugin\Intermediate\Build\Win64\x64\UnrealEditor\Development\WarplanePlugin\Module.WarplanePlugin.cpp.obj"
"D:\Project\bmh\FlightSimulation\Plugins\WarplanePlugin\Intermediate\Build\Win64\x64\UnrealEditor\Development\WarplanePlugin\StageTypes.gen.cpp.obj"
"D:\Project\bmh\FlightSimulation\Plugins\WarplanePlugin\Intermediate\Build\Win64\x64\UnrealEditor\Development\WarplanePlugin\WarplanePlugin.init.gen.cpp.obj"
"D:\Project\bmh\FlightSimulation\Plugins\WarplanePlugin\Intermediate\Build\Win64\x64\UnrealEditor\Development\WarplanePlugin\Default.rc2.res"
"D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\ThirdParty\lib\Windows-AMD64-Release\absl_bad_any_cast_impl.lib"
"D:\Project\bmh\FlightSimulation\Plugins\CesiumForUnreal_5.4\Source\ThirdParty\lib\Windows-AMD64-Release\absl_bad_optional_access.lib"

View File

@ -8,7 +8,5 @@
/NODEFAULTLIB
"D:\Project\bmh\FlightSimulation\Intermediate\Build\Win64\x64\FlightSimulationEditor\Development\UnrealEd\SharedPCH.UnrealEd.Project.ValApi.Cpp20.h.obj"
"D:\Project\bmh\FlightSimulation\Plugins\WarplanePlugin\Intermediate\Build\Win64\x64\UnrealEditor\Development\WarplanePlugin\Module.WarplanePlugin.cpp.obj"
"D:\Project\bmh\FlightSimulation\Plugins\WarplanePlugin\Intermediate\Build\Win64\x64\UnrealEditor\Development\WarplanePlugin\StageTypes.gen.cpp.obj"
"D:\Project\bmh\FlightSimulation\Plugins\WarplanePlugin\Intermediate\Build\Win64\x64\UnrealEditor\Development\WarplanePlugin\WarplanePlugin.init.gen.cpp.obj"
"D:\Project\bmh\FlightSimulation\Plugins\WarplanePlugin\Intermediate\Build\Win64\x64\UnrealEditor\Development\WarplanePlugin\Default.rc2.res"
/OUT:"D:\Project\bmh\FlightSimulation\Plugins\WarplanePlugin\Intermediate\Build\Win64\x64\UnrealEditor\Development\WarplanePlugin\UnrealEditor-WarplanePlugin.lib"

View File

@ -101,7 +101,7 @@ bPromoteOutputLogWarningsDuringPIE=False
NewWindowPosition=(X=0,Y=0)
PIEAlwaysOnTop=False
DisableStandaloneSound=False
AdditionalLaunchParameters=-AudioMixer
AdditionalLaunchParameters=-AudioMixer -PixelStreamingIP=localhost -PixelStreamingPort=8888
BuildGameBeforeLaunch=PlayOnBuild_Default
LaunchConfiguration=LaunchConfig_Default
PackFilesForLaunch=NoPak
@ -132,9 +132,9 @@ LastExecutedPIEPreviewDevice=
DeviceToEmulate=
PIESafeZoneOverride=(Left=0.000000,Top=0.000000,Right=0.000000,Bottom=0.000000)
MultipleInstancePositions=(X=0,Y=0)
NewWindowWidth=2554
NewWindowHeight=992
LastExecutedPlayModeType=PlayMode_InEditorFloating
NewWindowWidth=1920
NewWindowHeight=1080
LastExecutedPlayModeType=PlayMode_InNewProcess
[/Script/UnrealEd.LevelEditorViewportSettings]
FlightCameraControlExperimentalNavigation=False
@ -1418,7 +1418,7 @@ UEDMPlugin.TimeStamp=2025.02.17-00.34.39
UEDMPlugin.LastCompileMethod=External
[AssetEditorSubsystem]
CleanShutdown=True
CleanShutdown=False
DebuggerAttached=False
RecentAssetEditors=BlueprintEditor
RecentAssetEditors=BlueprintEditor
@ -1446,10 +1446,6 @@ RecentAssetEditors=BlueprintEditor
RecentAssetEditors=
RecentAssetEditors=
OpenAssetsAtExit=/Game/BluePrints/BP_PixStreamActor.BP_PixStreamActor
OpenAssetsAtExit=/Game/BluePrints/BP_CombatGameMode.BP_CombatGameMode
OpenAssetsAtExit=/Game/BluePrints/Core/BPI_GameModeInterface.BPI_GameModeInterface
OpenAssetsAtExit=/Game/BluePrints/BP_TrackActor.BP_TrackActor
OpenAssetsAtExit=/Game/BluePrints/Warcraft/BP_WarcraftBase.BP_WarcraftBase
None=======
[RootWindow]
@ -1490,8 +1486,8 @@ RecentsFiles=C:/Program Files/Epic Games/UE_5.4/Engine/Plugins/Animation/Control
RecentsFiles=D:/UE/UE_5.4/Engine/Plugins/Animation/ControlRig/Content/Python/init_unreal.py
[MRU]
MRUItem0=/Game/Maps/CesiumMap
MRUItem1=/Game/Maps/TestMap
MRUItem0=/Game/Maps/TestMap
MRUItem1=/Game/Maps/CesiumMap
MRUItem2=/Game/Maps/WarcraftTestMap
[/Script/UnrealEd.PersonaOptions]
@ -1878,11 +1874,11 @@ SequencerAssetPicker.ThumbnailSize=2
SequencerAssetPicker.CurrentViewType=0
[AssetEditorSubsystemRecents]
MRUItem0=/Game/BluePrints/Warcraft/BP_WarcraftBase
MRUItem1=/Game/BluePrints/BP_TrackActor
MRUItem2=/Game/BluePrints/Core/BPI_GameModeInterface
MRUItem3=/Game/BluePrints/BP_CombatGameMode
MRUItem4=/Game/BluePrints/BP_PixStreamActor
MRUItem0=/Game/BluePrints/BP_PixStreamActor
MRUItem1=/Game/BluePrints/Warcraft/BP_WarcraftBase
MRUItem2=/Game/BluePrints/BP_TrackActor
MRUItem3=/Game/BluePrints/Core/BPI_GameModeInterface
MRUItem4=/Game/BluePrints/BP_CombatGameMode
MRUItem5=/Game/Maps/CesiumMap
MRUItem6=/Game/PathTracer/Blueprints/BP_PathTracer
MRUItem7=/Game/BluePrints/Core/BPI_FlyInterface
@ -3159,6 +3155,9 @@ PixelStreamingInput.Activation=True
PixelStreamingInput.Cooking=True
PixelStreamingInput.Events=True
BP_WarcraftBase_C.Default=True
BP_TrackActor_C.Default=True
BP_PixStreamActor_C.TransformCommon=True
BP_PixStreamActor_C.Networking=True
[DetailPropertyExpansion]
BP_Warcraft_C=
@ -3177,7 +3176,7 @@ MoviePlayerSettings="\"Object\" "
GameplayTagsSettings="\"Object\" "
GameplayTagsList="\"Object\" "
AssetToolsSettings="\"Object\" "
DeveloperSettings="\"Object\" \"Object.ActorDefaults.WaterBodyLakeDefaults.WaterWaves.Object.Water Waves Asset\" \"Object.ActorDefaults.WaterBodyOceanDefaults.WaterWaves.Object.Water Waves Asset\" "
DeveloperSettings="\"Object\" "
AssetManagerSettings="\"Object\" "
SlateRHIRendererSettings="\"Object\" "
HierarchicalLODSettings="\"Object\" "
@ -3422,10 +3421,11 @@ NavigationData="\"Object\" "
PixelStreamingInput="\"Object\" "
[PlacementMode]
RecentlyPlaced=/Game/BluePrints/BP_PixStreamActor.BP_PixStreamActor;
RecentlyPlaced=/Game/BluePrints/BP_TrackActor.BP_TrackActor;
RecentlyPlaced=/Game/BluePrints/BP_FighterDisplay.BP_FighterDisplay;
RecentlyPlaced=/Game/BluePrints/BP_PathTracer_Child_Base.BP_PathTracer_Child_Base;
RecentlyPlaced=/Game/PathTracer/Blueprints/BP_PathTracer.BP_PathTracer;
RecentlyPlaced=/Game/BluePrints/BP_TrackActor.BP_TrackActor;
RecentlyPlaced=/Game/BluePrints/Warcraft/BP_WarcraftBase.BP_WarcraftBase;
[/Script/AudioEditor.AudioEditorSettings]

File diff suppressed because it is too large Load Diff