RemoteDrawingEngine: Reduce RP_READ_BITMAP result timeout.
[haiku.git] / src / bin / debug / profile / BasicProfileResult.h
blobde159ca31a46d136b4880d13bb3ad44e30077da6
1 /*
2 * Copyright 2008-2010, Ingo Weinhold, ingo_weinhold@gmx.de.
3 * Distributed under the terms of the MIT License.
4 */
5 #ifndef BASIC_PROFILE_RESULT_H
6 #define BASIC_PROFILE_RESULT_H
9 #include "ProfileResult.h"
12 class BasicImageProfileResult : public ImageProfileResult,
13 public DoublyLinkedListLinkImpl<BasicImageProfileResult> {
14 public:
15 BasicImageProfileResult(SharedImage* image,
16 image_id id);
17 virtual ~BasicImageProfileResult();
19 status_t Init();
21 inline bool AddHit(addr_t address);
22 inline void AddUnknownHit();
23 inline void AddSymbolHit(int32 symbolIndex);
24 inline void AddImageHit();
26 inline const int64* SymbolHits() const;
27 inline int64 UnknownHits() const;
29 private:
30 int64* fSymbolHits;
31 int64 fUnknownHits;
35 class BasicProfileResult : public ProfileResult {
36 public:
37 BasicProfileResult();
39 virtual void AddDroppedTicks(int32 dropped);
40 virtual void PrintResults(
41 ImageProfileResultContainer* container);
43 virtual status_t GetImageProfileResult(SharedImage* image,
44 image_id id,
45 ImageProfileResult*& _imageResult);
47 protected:
48 int64 fTotalTicks;
49 int64 fUnkownTicks;
50 int64 fDroppedTicks;
51 int64 fTotalSampleCount;
55 class InclusiveProfileResult : public BasicProfileResult {
56 public:
57 virtual void AddSamples(
58 ImageProfileResultContainer* container,
59 addr_t* samples, int32 sampleCount);
63 class ExclusiveProfileResult : public BasicProfileResult {
64 public:
65 virtual void AddSamples(
66 ImageProfileResultContainer* container,
67 addr_t* samples, int32 sampleCount);
71 #endif // BASIC_PROFILE_RESULT_H