Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / third_party / WebKit / public / platform / WebTraceLocation.h
blobdfa73fbc7b091c94c48ca1f53776ae48ef6efadc
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef WebTraceLocation_h
6 #define WebTraceLocation_h
8 #include "WebCommon.h"
10 namespace blink {
12 // This class is used to keep track of where posted tasks originate. See base/location.h in Chromium.
13 // Currently only store the bits used in Blink, base::Location stores more.
14 class BLINK_PLATFORM_EXPORT WebTraceLocation {
15 public:
16 // These char*s are not copied and must live for the duration of the program.
17 WebTraceLocation(const char* function, const char* file);
18 WebTraceLocation();
20 const char* functionName() const;
21 const char* fileName() const;
23 private:
24 const char* m_functionName;
25 const char* m_fileName;
28 #if INSIDE_BLINK
29 #define FROM_HERE ::blink::WebTraceLocation(__FUNCTION__, __FILE__)
30 #endif // INSIDE_BLINK
34 #endif // WebTraceLocation_h