2 * Copyright (C) ARM Limited 2010-2014. All rights reserved.
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
10 #define SESSION_DATA_H
18 #include "MaliVideoDriver.h"
19 #include "PerfDriver.h"
21 #define PROTOCOL_VERSION 19
22 #define PROTOCOL_DEV 1000 // Differentiates development versions (timestamp) from release versions
24 #define NS_PER_S ((uint64_t)1000000000)
26 struct ImageLinkList {
28 struct ImageLinkList *next;
33 static const size_t MAX_STRING_LEN = 80;
38 void parseSessionXML(char* xmlString);
44 MaliVideoDriver maliVideo;
46 char mCoreName[MAX_STRING_LEN];
47 struct ImageLinkList *mImages;
48 char* mConfigurationXMLPath;
49 char* mSessionXMLPath;
54 bool mWaitingOnCommand;
55 bool mSessionIsActive;
57 bool mOneShot; // halt processing of the driver data until profiling is complete or the buffer is filled
62 int mTotalBufferSize; // number of MB to use for the entire collection buffer
73 Counter mCounters[MAX_PERFORMANCE_COUNTERS];
76 // Intentionally unimplemented
77 SessionData(const SessionData &);
78 SessionData &operator=(const SessionData &);
81 extern SessionData* gSessionData;
86 #endif // SESSION_DATA_H