Merge remote-tracking branch 'origin/master' into 1.8
This commit is contained in:
@@ -108,6 +108,7 @@ namespace
|
||||
};
|
||||
|
||||
ChunkedArray<Location, 256> ManagedSourceLocations;
|
||||
ThreadLocal<uint32> ManagedEventsCount;
|
||||
#endif
|
||||
#endif
|
||||
}
|
||||
@@ -145,7 +146,9 @@ DEFINE_INTERNAL_CALL(void) ProfilerInternal_BeginEvent(MString* nameObj)
|
||||
srcLoc->color = 0;
|
||||
}
|
||||
//static constexpr tracy::SourceLocationData tracySrcLoc{ nullptr, __FUNCTION__, __FILE__, (uint32_t)__LINE__, 0 };
|
||||
tracy::ScopedZone::Begin(srcLoc);
|
||||
const bool tracyActive = tracy::ScopedZone::Begin(srcLoc);
|
||||
if (tracyActive)
|
||||
ManagedEventsCount.Get()++;
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
@@ -155,7 +158,12 @@ DEFINE_INTERNAL_CALL(void) ProfilerInternal_EndEvent()
|
||||
{
|
||||
#if COMPILE_WITH_PROFILER
|
||||
#if TRACY_ENABLE
|
||||
tracy::ScopedZone::End();
|
||||
uint32& tracyActive = ManagedEventsCount.Get();
|
||||
if (tracyActive > 0)
|
||||
{
|
||||
tracyActive--;
|
||||
tracy::ScopedZone::End();
|
||||
}
|
||||
#endif
|
||||
ProfilerCPU::EndEvent();
|
||||
#endif
|
||||
|
||||
@@ -18,7 +18,7 @@ private:
|
||||
#elif USE_NETCORE
|
||||
void* _handle;
|
||||
StringAnsi _name;
|
||||
StringAnsi _namespace_;
|
||||
StringAnsi _namespace;
|
||||
uint32 _types = 0;
|
||||
mutable uint32 _size = 0;
|
||||
#endif
|
||||
|
||||
@@ -1208,6 +1208,21 @@ void* MUtils::VariantToManagedArgPtr(Variant& value, MType* type, bool& failed)
|
||||
object = nullptr;
|
||||
return object;
|
||||
}
|
||||
case MTypes::Ptr:
|
||||
switch (value.Type.Type)
|
||||
{
|
||||
case VariantType::Pointer:
|
||||
return &value.AsPointer;
|
||||
case VariantType::Object:
|
||||
return &value.AsObject;
|
||||
case VariantType::Asset:
|
||||
return &value.AsAsset;
|
||||
case VariantType::Structure:
|
||||
case VariantType::Blob:
|
||||
return &value.AsBlob.Data;
|
||||
default:
|
||||
return nullptr;
|
||||
}
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -118,7 +118,7 @@ struct MConverter<String>
|
||||
{
|
||||
MString** dataPtr = MCore::Array::GetAddress<MString*>(data);
|
||||
for (int32 i = 0; i < result.Length(); i++)
|
||||
MUtils::ToString(dataPtr[i], result[i]);
|
||||
MUtils::ToString(dataPtr[i], result.Get()[i]);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -151,7 +151,7 @@ struct MConverter<StringAnsi>
|
||||
{
|
||||
MString** dataPtr = MCore::Array::GetAddress<MString*>(data);
|
||||
for (int32 i = 0; i < result.Length(); i++)
|
||||
MUtils::ToString(dataPtr[i], result[i]);
|
||||
MUtils::ToString(dataPtr[i], result.Get()[i]);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -184,7 +184,7 @@ struct MConverter<StringView>
|
||||
{
|
||||
MString** dataPtr = MCore::Array::GetAddress<MString*>(data);
|
||||
for (int32 i = 0; i < result.Length(); i++)
|
||||
MUtils::ToString(dataPtr[i], result[i]);
|
||||
MUtils::ToString(dataPtr[i], result.Get()[i]);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -217,7 +217,7 @@ struct MConverter<Variant>
|
||||
{
|
||||
MObject** dataPtr = MCore::Array::GetAddress<MObject*>(data);
|
||||
for (int32 i = 0; i < result.Length(); i++)
|
||||
result[i] = MUtils::UnboxVariant(dataPtr[i]);
|
||||
result.Get()[i] = MUtils::UnboxVariant(dataPtr[i]);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -250,7 +250,7 @@ struct MConverter<T*, typename TEnableIf<TIsBaseOf<class ScriptingObject, T>::Va
|
||||
{
|
||||
MObject** dataPtr = MCore::Array::GetAddress<MObject*>(data);
|
||||
for (int32 i = 0; i < result.Length(); i++)
|
||||
result[i] = (T*)ScriptingObject::ToNative(dataPtr[i]);
|
||||
result.Get()[i] = (T*)ScriptingObject::ToNative(dataPtr[i]);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -307,7 +307,7 @@ struct MConverter<ScriptingObjectReference<T>>
|
||||
{
|
||||
MObject** dataPtr = MCore::Array::GetAddress<MObject*>(data);
|
||||
for (int32 i = 0; i < result.Length(); i++)
|
||||
result[i] = (T*)ScriptingObject::ToNative(dataPtr[i]);
|
||||
result.Get()[i] = (T*)ScriptingObject::ToNative(dataPtr[i]);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -343,7 +343,7 @@ struct MConverter<AssetReference<T>>
|
||||
{
|
||||
MObject** dataPtr = MCore::Array::GetAddress<MObject*>(data);
|
||||
for (int32 i = 0; i < result.Length(); i++)
|
||||
result[i] = (T*)ScriptingObject::ToNative(dataPtr[i]);
|
||||
result.Get()[i] = (T*)ScriptingObject::ToNative(dataPtr[i]);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -840,7 +840,7 @@ bool MAssembly::UnloadImage(bool isReloading)
|
||||
MClass::MClass(const MAssembly* parentAssembly, void* handle, const char* name, const char* fullname, const char* namespace_, MTypeAttributes attributes)
|
||||
: _handle(handle)
|
||||
, _name(name)
|
||||
, _namespace_(namespace_)
|
||||
, _namespace(namespace_)
|
||||
, _assembly(parentAssembly)
|
||||
, _fullname(fullname)
|
||||
, _hasCachedProperties(false)
|
||||
@@ -919,7 +919,7 @@ StringAnsiView MClass::GetName() const
|
||||
|
||||
StringAnsiView MClass::GetNamespace() const
|
||||
{
|
||||
return _namespace_;
|
||||
return _namespace;
|
||||
}
|
||||
|
||||
MType* MClass::GetType() const
|
||||
@@ -1661,7 +1661,7 @@ bool InitHostfxr()
|
||||
|
||||
// Get path to hostfxr library
|
||||
get_hostfxr_parameters get_hostfxr_params;
|
||||
get_hostfxr_params.size = sizeof(hostfxr_initialize_parameters);
|
||||
get_hostfxr_params.size = sizeof(get_hostfxr_parameters);
|
||||
get_hostfxr_params.assembly_path = libraryPath.Get();
|
||||
#if PLATFORM_MAC
|
||||
::String macOSDotnetRoot = TEXT("/usr/local/share/dotnet");
|
||||
|
||||
@@ -20,10 +20,7 @@ public class Scripting : EngineModule
|
||||
void AddFrameworkDefines(string template, int major, int latestMinor)
|
||||
{
|
||||
for (int minor = latestMinor; minor >= 0; minor--)
|
||||
{
|
||||
options.ScriptingAPI.Defines.Add(string.Format(template, major, minor));
|
||||
options.ScriptingAPI.Defines.Add(string.Format($"{template}_OR_GREATER", major, minor));
|
||||
}
|
||||
}
|
||||
|
||||
// .NET
|
||||
@@ -31,14 +28,15 @@ public class Scripting : EngineModule
|
||||
options.ScriptingAPI.Defines.Add("USE_NETCORE");
|
||||
|
||||
// .NET SDK
|
||||
AddFrameworkDefines("NET{0}_{1}", 7, 0); // "NET7_0" and "NET7_0_OR_GREATER"
|
||||
AddFrameworkDefines("NET{0}_{1}", 6, 0);
|
||||
AddFrameworkDefines("NET{0}_{1}", 5, 0);
|
||||
var dotnetSdk = DotNetSdk.Instance;
|
||||
options.ScriptingAPI.Defines.Add("NET");
|
||||
AddFrameworkDefines("NETCOREAPP{0}_{1}", 3, 1); // "NETCOREAPP3_1" and "NETCOREAPP3_1_OR_GREATER"
|
||||
AddFrameworkDefines("NETCOREAPP{0}_{1}", 2, 2);
|
||||
AddFrameworkDefines("NETCOREAPP{0}_{1}", 1, 1);
|
||||
AddFrameworkDefines("NET{0}_{1}", dotnetSdk.Version.Major, 0); // "NET7_0"
|
||||
for (int i = 5; i <= dotnetSdk.Version.Major; i++)
|
||||
AddFrameworkDefines("NET{0}_{1}_OR_GREATER", dotnetSdk.Version.Major, 0); // "NET7_0_OR_GREATER"
|
||||
options.ScriptingAPI.Defines.Add("NETCOREAPP");
|
||||
AddFrameworkDefines("NETCOREAPP{0}_{1}_OR_GREATER", 3, 1); // "NETCOREAPP3_1_OR_GREATER"
|
||||
AddFrameworkDefines("NETCOREAPP{0}_{1}_OR_GREATER", 2, 2);
|
||||
AddFrameworkDefines("NETCOREAPP{0}_{1}_OR_GREATER", 1, 1);
|
||||
|
||||
if (options.Target is EngineTarget engineTarget && engineTarget.UseSeparateMainExecutable(options))
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user