Files
UnrealEngineUWP/Engine/Source/Developer/SessionServices/Public/Interfaces/SessionLogMessage.h
Max Preussner 3aece47882 Docs: Removed file comments and added missing code documentation
Please note that file comments had no purpose in nearly all cases and just added visual clutter. The two files that had meaningful file comments had their comments moved into the corresponding classes. There are still hundreds of file comments left in other files that will be removed over time.

Also cleaned up some random stuff along the way:
- relative paths to public headers within the same module are no longer necessary (automatically discovered by UBT now)
- header guards are deprecated, use #pragma once instead (all compilers support it now)
- space between multiple template brackets is no longer required (all compilers support >> now)
- NULL to nullptr, OVERRIDE to override
- spelling errors, whitespace, line breaks

[CL 2104067 by Max Preussner in Main branch]
2014-06-12 23:22:18 -04:00

74 lines
2.1 KiB
C++

// Copyright 1998-2014 Epic Games, Inc. All Rights Reserved.
#pragma once
/** Type definition for shared pointers to instances of FLauncherLogMessage. */
typedef TSharedPtr<struct FSessionLogMessage> FSessionLogMessagePtr;
/** Type definition for shared references to instances of FLauncherLogMessage. */
typedef TSharedRef<struct FSessionLogMessage> FSessionLogMessageRef;
/**
* Structure for log messages.
*/
struct FSessionLogMessage
{
/** Holds the log category. */
FName Category;
/** Holds the identifier of the engine instance that generated this log message. */
FGuid InstanceId;
/** Holds the name of the engine instance that generated this log message. */
FString InstanceName;
/** Holds the message text. */
FString Text;
/** Holds the time at which the message was generated. */
FDateTime Time;
/** Holds the number of seconds from the start of the instance at which the message was generated. */
double TimeSeconds;
/** Holds the verbosity type. */
ELogVerbosity::Type Verbosity;
public:
/**
* Creates and initializes a new instance.
*
* @param InInstanceId The identifier of the instance that generated the log message.
* @param InInstanceName The name of the engine instance that generated the log message.
* @param InTimeSeconds The number of seconds from the start of the instance at which the message was generated.
* @param InText The message text.
* @param InVerbosity The verbosity type.
* @param InCategory The log category.
*/
FSessionLogMessage(const FGuid& InInstanceId, const FString& InInstanceName, float InTimeSeconds, const FString& InText, ELogVerbosity::Type InVerbosity, const FName& InCategory)
: Category(InCategory)
, InstanceId(InInstanceId)
, InstanceName(InInstanceName)
, Text((InCategory != NAME_None) ? InCategory.ToString() + TEXT(": ") + InText : InText)
, Time(FDateTime::Now())
, TimeSeconds(InTimeSeconds)
, Verbosity(InVerbosity)
{ }
public:
/**
* Implements a predicate to compare two log messages by log time.
*/
struct TimeComparer
{
bool operator () (const FSessionLogMessagePtr& A, const FSessionLogMessagePtr& B) const
{
return A->Time < B->Time;
}
};
};