Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(191)

Unified Diff: components/device_event_log/device_event_log.h

Issue 1140643002: Fix device_event_log component build, make NonThreadSafe (Take 2) (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « components/device_event_log/BUILD.gn ('k') | components/device_event_log/device_event_log.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: components/device_event_log/device_event_log.h
diff --git a/components/device_event_log/device_event_log.h b/components/device_event_log/device_event_log.h
index 76afc638ff2aceaeef3c3bf5f8128238014970ca..6305c01524d586fe76570d9f84e56a060abf86e8 100644
--- a/components/device_event_log/device_event_log.h
+++ b/components/device_event_log/device_event_log.h
@@ -11,13 +11,20 @@
#include "base/basictypes.h"
#include "base/logging.h"
#include "base/timer/elapsed_timer.h"
+#include "components/device_event_log/device_event_log_export.h"
// These macros can be used to log device related events.
+//
+// NOTE: If these macros are called from a thread other than the thread that
+// device_event_log::Initialize() was called from (i.e. the UI thread), a task
+// will be posted to the UI thread to log the event.
+//
// The following values should be used for |level| in these macros:
// ERROR Unexpected events, or device level failures. Use sparingly.
// USER Events initiated directly by a user (or Chrome) action.
// EVENT Default event type.
// DEBUG Debugging details that are usually not interesting.
+//
// Examples:
// NET_LOG(EVENT) << "NetworkState Changed " << name << ": " << state;
// POWER_LOG(USER) << "Suspend requested";
@@ -100,27 +107,28 @@ enum StringOrder { OLDEST_FIRST, NEWEST_FIRST };
// Initializes / shuts down device event logging. If |max_entries| = 0 the
// default value will be used.
-void Initialize(size_t max_entries);
-void Shutdown();
+void DEVICE_EVENT_LOG_EXPORT Initialize(size_t max_entries);
+bool DEVICE_EVENT_LOG_EXPORT IsInitialized();
+void DEVICE_EVENT_LOG_EXPORT Shutdown();
// If the global instance is initialized, adds an entry to it. Regardless of
// whether the global instance was intitialzed, this logs the event to
// LOG(ERROR) if |type| = ERROR or VLOG(1) otherwise.
-void AddEntry(const char* file,
- int line,
- LogType type,
- LogLevel level,
- const std::string& event);
+void DEVICE_EVENT_LOG_EXPORT AddEntry(const char* file,
+ int line,
+ LogType type,
+ LogLevel level,
+ const std::string& event);
// For backwards compatibility with network_event_log. Combines |event| and
// |description| and calls AddEntry().
-void AddEntryWithDescription(
- const char* file,
- int line,
- LogType type,
- LogLevel level,
- const std::string& event,
- const std::string& description);
+void DEVICE_EVENT_LOG_EXPORT
+AddEntryWithDescription(const char* file,
+ int line,
+ LogType type,
+ LogLevel level,
+ const std::string& event,
+ const std::string& description);
// Outputs the log to a formatted string.
// |order| determines which order to output the events.
@@ -138,20 +146,20 @@ void AddEntryWithDescription(
// |max_level| determines the maximum log level to be included in the output.
// |max_events| limits how many events are output if > 0, otherwise all events
// are included.
-std::string GetAsString(StringOrder order,
- const std::string& format,
- const std::string& types,
- LogLevel max_level,
- size_t max_events);
+std::string DEVICE_EVENT_LOG_EXPORT GetAsString(StringOrder order,
+ const std::string& format,
+ const std::string& types,
+ LogLevel max_level,
+ size_t max_events);
-extern const LogLevel kDefaultLogLevel;
+DEVICE_EVENT_LOG_EXPORT extern const LogLevel kDefaultLogLevel;
namespace internal {
// Implementation class for DEVICE_LOG macros. Provides a stream for creating
// a log string and adds the event using device_event_log::AddEntry on
// destruction.
-class DeviceEventLogInstance {
+class DEVICE_EVENT_LOG_EXPORT DeviceEventLogInstance {
public:
DeviceEventLogInstance(const char* file,
int line,
@@ -174,7 +182,7 @@ class DeviceEventLogInstance {
// Implementation class for DEVICE_PLOG macros. Provides a stream for creating
// a log string and adds the event, including system error code, using
// device_event_log::AddEntry on destruction.
-class DeviceEventSystemErrorLogInstance {
+class DEVICE_EVENT_LOG_EXPORT DeviceEventSystemErrorLogInstance {
public:
DeviceEventSystemErrorLogInstance(const char* file,
int line,
@@ -198,7 +206,7 @@ class DeviceEventSystemErrorLogInstance {
// Implementation class for SCOPED_LOG_IF_SLOW macros. Tests the elapsed time on
// destruction and adds a Debug or Error log entry if it exceeds the
// corresponding expected maximum elapsed time.
-class ScopedDeviceLogIfSlow {
+class DEVICE_EVENT_LOG_EXPORT ScopedDeviceLogIfSlow {
public:
ScopedDeviceLogIfSlow(LogType type,
const char* file,
« no previous file with comments | « components/device_event_log/BUILD.gn ('k') | components/device_event_log/device_event_log.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698