diff options
author | Drew Richardson <drew.richardson@arm.com> | 2014-07-16 12:00:00 -0700 |
---|---|---|
committer | Drew Richardson <drew.richardson@arm.com> | 2014-12-19 15:54:51 -0800 |
commit | 8b39b6c50a01bcfa280151b43079dab428cbab45 (patch) | |
tree | 66294093e2cd51c0df7afa6d119ec78f65274515 /daemon/MaliVideoDriver.h | |
parent | 020278c1a682ea75ddb63fe4e0d373116935199f (diff) |
gator: Version 5.195.19
Signed-off-by: Drew Richardson <drew.richardson@arm.com>
Diffstat (limited to 'daemon/MaliVideoDriver.h')
-rw-r--r-- | daemon/MaliVideoDriver.h | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/daemon/MaliVideoDriver.h b/daemon/MaliVideoDriver.h new file mode 100644 index 0000000..00cb808 --- /dev/null +++ b/daemon/MaliVideoDriver.h @@ -0,0 +1,50 @@ +/** + * Copyright (C) ARM Limited 2014. All rights reserved. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + */ + +#ifndef MALIVIDEODRIVER_H +#define MALIVIDEODRIVER_H + +#include "Driver.h" + +class MaliVideoCounter; + +enum MaliVideoCounterType { + MVCT_COUNTER, + MVCT_EVENT, + MVCT_ACTIVITY, +}; + +class MaliVideoDriver : public Driver { +public: + MaliVideoDriver(); + ~MaliVideoDriver(); + + void setup(mxml_node_t *const xml); + + bool claimCounter(const Counter &counter) const; + bool countersEnabled() const; + void resetCounters(); + void setupCounter(Counter &counter); + + int writeCounters(mxml_node_t *root) const; + + bool start(const int mveUds); + +private: + MaliVideoCounter *findCounter(const Counter &counter) const; + void marshalEnable(const MaliVideoCounterType type, char *const buf, const size_t bufsize, int &pos); + + MaliVideoCounter *mCounters; + int mActivityCount; + + // Intentionally unimplemented + MaliVideoDriver(const MaliVideoDriver &); + MaliVideoDriver &operator=(const MaliVideoDriver &); +}; + +#endif // MALIVIDEODRIVER_H |