第一次提交
This commit is contained in:
@@ -0,0 +1,50 @@
|
||||
// Copyright 2025 https://yuewu.dev/en All Rights Reserved.
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "CoreMinimal.h"
|
||||
#include "UObject/Object.h"
|
||||
|
||||
DECLARE_STATS_GROUP(TEXT("GCS"), STATGROUP_GCS, STATCAT_Advanced)
|
||||
|
||||
GENERICCOMBATSYSTEM_API DECLARE_LOG_CATEGORY_EXTERN(LogGCS, Log, All)
|
||||
|
||||
GENERICCOMBATSYSTEM_API DECLARE_LOG_CATEGORY_EXTERN(LogGCS_Targeting, Log, All)
|
||||
|
||||
GENERICCOMBATSYSTEM_API DECLARE_LOG_CATEGORY_EXTERN(LogGCS_Collision, Log, All)
|
||||
|
||||
GENERICCOMBATSYSTEM_API DECLARE_LOG_CATEGORY_EXTERN(LogGCS_Trace, Log, All)
|
||||
|
||||
|
||||
/**
|
||||
* Gets the context string for logging purposes.
|
||||
* 获取用于日志记录的上下文字符串。
|
||||
* @param ContextObject The object providing the context (optional). 提供上下文的对象(可选)。
|
||||
* @return The context string. 上下文字符串。
|
||||
*/
|
||||
GENERICCOMBATSYSTEM_API FString GetGCSLogContextString(const UObject* ContextObject = nullptr);
|
||||
|
||||
GENERICCOMBATSYSTEM_API FString GetClientServerContextString(UObject* ContextObject = nullptr);
|
||||
|
||||
#define GCS_LOG(Verbosity, Format, ...) \
|
||||
{ \
|
||||
UE_LOG(LogGCS, Verbosity, TEXT("%S: %s"),__FUNCTION__, *FString::Printf(TEXT(Format), ##__VA_ARGS__)) \
|
||||
}
|
||||
|
||||
#define GCS_CLOG(Verbosity, Format, ...) \
|
||||
{ \
|
||||
UE_LOG(LogGCS, Verbosity, TEXT("%S: ctx(%s) %s"),__FUNCTION__, *GetGCSLogContextString(this), *FString::Printf(TEXT(Format), ##__VA_ARGS__)) \
|
||||
}
|
||||
|
||||
#define GCS_CLOG_Trace(Verbosity, Format, ...) \
|
||||
{ \
|
||||
UE_LOG(LogGCS, Verbosity, TEXT("%S: ctx(%s) %s"),__FUNCTION__, *GetGCSLogContextString(this), *FString::Printf(TEXT(Format), ##__VA_ARGS__)) \
|
||||
}
|
||||
|
||||
#define GCS_OWNED_CLOG(LogOwner,Verbosity, Format, ...) \
|
||||
{ \
|
||||
UE_LOG(LogGCS, Verbosity, TEXT("%S: ctx(%s) %s"),__FUNCTION__, *GetGCSLogContextString(LogOwner), *FString::Printf(TEXT(Format), ##__VA_ARGS__)) \
|
||||
}
|
||||
|
||||
|
||||
#define GCS_VLOG(Verbosity, Format, ...) UE_VLOG(GetOwner(), LogGAIS_Command, Verbosity, Format, ##__VA_ARGS__)
|
||||
Reference in New Issue
Block a user