Fixed comments that were inconsistent with the style guidelines described in C++ core guidelines and the modern C++/WinRT language projections and removed trailing whitespace. Inserted a space after the beginning of the comment so the text wasn't touching the // on all occurrences. Removed all occurrences of trailing whitespace
42 lines
1.9 KiB
C++
42 lines
1.9 KiB
C++
// Copyright (c) Microsoft Corporation. All rights reserved.
|
|
// Licensed under the MIT License.
|
|
|
|
#pragma once
|
|
|
|
namespace CalculatorApp
|
|
{
|
|
class AppLifecycleLogger
|
|
{
|
|
public:
|
|
AppLifecycleLogger(AppLifecycleLogger const&) = delete;
|
|
AppLifecycleLogger const & operator= (AppLifecycleLogger const&) = delete;
|
|
~AppLifecycleLogger();
|
|
static AppLifecycleLogger& GetInstance();
|
|
bool GetTraceLoggingProviderEnabled() const;
|
|
|
|
void LaunchUIResponsive() const;
|
|
void LaunchVisibleComplete() const;
|
|
void ResumeUIResponsive() const;
|
|
void ResumeVisibleComplete() const;
|
|
|
|
void ResizeUIResponsive() const;
|
|
void ResizeVisibleComplete() const;
|
|
void ResizeUIResponsive(int32_t viewId) const;
|
|
void ResizeVisibleComplete(int32_t viewId) const;
|
|
|
|
private:
|
|
// Make the object construction private to allow singleton access to this class
|
|
AppLifecycleLogger();
|
|
|
|
// Any new Log method should
|
|
// a) Decide the level of logging. This will help us in limiting recording of events only up to a certain level. See this link for guidance https://msdn.microsoft.com/en-us/library/windows/desktop/aa363742(v=vs.85).aspx
|
|
// We're using Verbose level for events that are called frequently and needed only for debugging or capturing perf for specific scenarios
|
|
// b) Should decide whether or not to log to telemetry and pass TraceLoggingKeyword(MICROSOFT_KEYWORD_TELEMETRY) accordingly
|
|
// c) Should accept a variable number of additional data arguments if needed
|
|
void LogAppLifecycleEvent(winrt::hstring const& eventName, winrt::Windows::Foundation::Diagnostics::LoggingFields const& fields) const;
|
|
void PopulateAppInfo(winrt::Windows::Foundation::Diagnostics::LoggingFields& fields) const;
|
|
|
|
winrt::Windows::Foundation::Diagnostics::LoggingChannel m_appLifecycleProvider;
|
|
};
|
|
}
|