44 lines
882 B
C
44 lines
882 B
C
|
/**
|
||
|
* 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 CCNDRIVER_H
|
||
|
#define CCNDRIVER_H
|
||
|
|
||
|
#include "Driver.h"
|
||
|
|
||
|
class CCNDriver : public Driver {
|
||
|
public:
|
||
|
CCNDriver();
|
||
|
~CCNDriver();
|
||
|
|
||
|
bool claimCounter(const Counter &counter) const;
|
||
|
void resetCounters();
|
||
|
void setupCounter(Counter &counter);
|
||
|
|
||
|
void readEvents(mxml_node_t *const);
|
||
|
int writeCounters(mxml_node_t *const root) const;
|
||
|
void writeEvents(mxml_node_t *const) const;
|
||
|
|
||
|
private:
|
||
|
enum NodeType {
|
||
|
NT_UNKNOWN,
|
||
|
NT_HNF,
|
||
|
NT_RNI,
|
||
|
NT_SBAS,
|
||
|
};
|
||
|
|
||
|
NodeType *mNodeTypes;
|
||
|
int mXpCount;
|
||
|
|
||
|
// Intentionally unimplemented
|
||
|
CCNDriver(const CCNDriver &);
|
||
|
CCNDriver &operator=(const CCNDriver &);
|
||
|
};
|
||
|
|
||
|
#endif // CCNDRIVER_H
|