]> git.saurik.com Git - apple/javascriptcore.git/blobdiff - profiler/Profile.h
JavaScriptCore-7601.1.46.3.tar.gz
[apple/javascriptcore.git] / profiler / Profile.h
index 8984eaf2c54c16c9187fcd5c6b9c6e8e7cb351ea..41cb670cae7ca9eb17ae464dac3ee31c1a1f1f92 100644 (file)
@@ -35,38 +35,30 @@ namespace JSC {
 
 class JS_EXPORT_PRIVATE Profile : public RefCounted<Profile> {
 public:
-    static PassRefPtr<Profile> create(const String& title, unsigned uid);
+    static Ref<Profile> create(const String& title, unsigned uid, double);
     virtual ~Profile();
 
     const String& title() const { return m_title; }
     unsigned uid() const { return m_uid; }
 
-    ProfileNode* head() const { return m_head.get(); }
-    void setHead(PassRefPtr<ProfileNode> head) { m_head = head; }
-
-    double totalTime() const { return m_head->totalTime(); }
-
-    double idleTime() const { return m_idleTime; }
-    void setIdleTime(double idleTime) { m_idleTime = idleTime; }
-
-    void forEach(void (ProfileNode::*)());
+    ProfileNode* rootNode() const { return m_rootNode.get(); }
+    void setRootNode(PassRefPtr<ProfileNode> rootNode) { m_rootNode = rootNode; }
 
 #ifndef NDEBUG
-    void debugPrintData() const;
-    void debugPrintDataSampleStyle() const;
+    void debugPrint();
+    void debugPrintSampleStyle();
 #endif
 
 protected:
-    Profile(const String& title, unsigned uid);
+    Profile(const String& title, unsigned uid, double startTime);
 
 private:
     void removeProfileStart();
     void removeProfileEnd();
 
     String m_title;
-    RefPtr<ProfileNode> m_head;
+    RefPtr<ProfileNode> m_rootNode;
     unsigned m_uid;
-    double m_idleTime;
 };
 
 } // namespace JSC