Loading xpcom/ds/nsITimelineService.idl +24 −0 Original line number Diff line number Diff line Loading @@ -149,6 +149,26 @@ PR_EXTERN(nsresult) NS_TimelineLeave(const char *text); #define NS_TIMELINE_RESET_TIMER(timerName) NS_TimelineResetTimer(timerName) #define NS_TIMELINE_MARK_TIMER1(timerName, str) NS_TimelineMarkTimer(timerName, str) /* * Helper class to time functions. Use only static strings. */ class nsFunctionTimer { public: const char *mTimer; PRBool mMark; nsFunctionTimer(const char *timer, PRBool mark = PR_TRUE) : mTimer(timer), mMark(mark) { NS_TIMELINE_START_TIMER(mTimer); } ~nsFunctionTimer() { NS_TIMELINE_STOP_TIMER(mTimer); if (mMark) NS_TIMELINE_MARK_TIMER(mTimer); } }; /* * NS_TIMELINE_MARK_ macros for various data types. Each of these * macros replaces "%s" in its "text" argument with a string Loading Loading @@ -189,6 +209,8 @@ PR_EXTERN(nsresult) NS_TimelineLeave(const char *text); nsCOMPtr<nsIChannel> channel(do_QueryInterface(request)); \ NS_TIMELINE_MARK_CHANNEL(text, channel); \ } #define NS_TIMELINE_MARK_FUNCTION(timer) nsFunctionTimer functionTimer(timer) #define NS_TIMELINE_TIME_FUNCTION(timer) nsFunctionTimer functionTimer(timer, PR_FALSE) /* no mark, only time */ #else /* !defined(MOZ_TIMELINE) */ #define NS_TIMELINE_MARK(text) Loading @@ -203,6 +225,8 @@ PR_EXTERN(nsresult) NS_TimelineLeave(const char *text); #define NS_TIMELINE_ENTER(text) #define NS_TIMELINE_LEAVE(text) #define NS_TIMELINE_MARK_URI(text, uri) #define NS_TIMELINE_MARK_FUNCTION(timer) #define NS_TIMELINE_TIME_FUNCTION(timer) #define NS_TIMELINE_MARK_CHANNEL(text, channel) #define NS_TIMELINE_MARK_LOADER(text, loader); #endif /* defined(MOZ_TIMELINE) */ Loading Loading
xpcom/ds/nsITimelineService.idl +24 −0 Original line number Diff line number Diff line Loading @@ -149,6 +149,26 @@ PR_EXTERN(nsresult) NS_TimelineLeave(const char *text); #define NS_TIMELINE_RESET_TIMER(timerName) NS_TimelineResetTimer(timerName) #define NS_TIMELINE_MARK_TIMER1(timerName, str) NS_TimelineMarkTimer(timerName, str) /* * Helper class to time functions. Use only static strings. */ class nsFunctionTimer { public: const char *mTimer; PRBool mMark; nsFunctionTimer(const char *timer, PRBool mark = PR_TRUE) : mTimer(timer), mMark(mark) { NS_TIMELINE_START_TIMER(mTimer); } ~nsFunctionTimer() { NS_TIMELINE_STOP_TIMER(mTimer); if (mMark) NS_TIMELINE_MARK_TIMER(mTimer); } }; /* * NS_TIMELINE_MARK_ macros for various data types. Each of these * macros replaces "%s" in its "text" argument with a string Loading Loading @@ -189,6 +209,8 @@ PR_EXTERN(nsresult) NS_TimelineLeave(const char *text); nsCOMPtr<nsIChannel> channel(do_QueryInterface(request)); \ NS_TIMELINE_MARK_CHANNEL(text, channel); \ } #define NS_TIMELINE_MARK_FUNCTION(timer) nsFunctionTimer functionTimer(timer) #define NS_TIMELINE_TIME_FUNCTION(timer) nsFunctionTimer functionTimer(timer, PR_FALSE) /* no mark, only time */ #else /* !defined(MOZ_TIMELINE) */ #define NS_TIMELINE_MARK(text) Loading @@ -203,6 +225,8 @@ PR_EXTERN(nsresult) NS_TimelineLeave(const char *text); #define NS_TIMELINE_ENTER(text) #define NS_TIMELINE_LEAVE(text) #define NS_TIMELINE_MARK_URI(text, uri) #define NS_TIMELINE_MARK_FUNCTION(timer) #define NS_TIMELINE_TIME_FUNCTION(timer) #define NS_TIMELINE_MARK_CHANNEL(text, channel) #define NS_TIMELINE_MARK_LOADER(text, loader); #endif /* defined(MOZ_TIMELINE) */ Loading