2 * Copyright 2008-2010, Ingo Weinhold, ingo_weinhold@gmx.de.
3 * Distributed under the terms of the MIT License.
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
> {
15 BasicImageProfileResult(SharedImage
* image
,
17 virtual ~BasicImageProfileResult();
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;
35 class BasicProfileResult
: public ProfileResult
{
39 virtual void AddDroppedTicks(int32 dropped
);
40 virtual void PrintResults(
41 ImageProfileResultContainer
* container
);
43 virtual status_t
GetImageProfileResult(SharedImage
* image
,
45 ImageProfileResult
*& _imageResult
);
51 int64 fTotalSampleCount
;
55 class InclusiveProfileResult
: public BasicProfileResult
{
57 virtual void AddSamples(
58 ImageProfileResultContainer
* container
,
59 addr_t
* samples
, int32 sampleCount
);
63 class ExclusiveProfileResult
: public BasicProfileResult
{
65 virtual void AddSamples(
66 ImageProfileResultContainer
* container
,
67 addr_t
* samples
, int32 sampleCount
);
71 #endif // BASIC_PROFILE_RESULT_H