/[escript]/trunk/escript/src/DataProf.h
ViewVC logotype

Contents of /trunk/escript/src/DataProf.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 155 - (show annotations)
Wed Nov 9 02:02:19 2005 UTC (14 years, 2 months ago) by jgs
Original Path: trunk/escript/src/Data/DataProf.h
File MIME type: text/plain
File size: 3207 byte(s)
move all directories from trunk/esys2 into trunk and remove esys2

1 /*
2 ******************************************************************************
3 * *
4 * COPYRIGHT ACcESS 2004 - All Rights Reserved *
5 * *
6 * This software is the property of ACcESS. No part of this code *
7 * may be copied in any form or by any means without the expressed written *
8 * consent of ACcESS. Copying, use or modification of this software *
9 * by any unauthorised person is illegal unless that person has a software *
10 * license agreement with ACcESS. *
11 * *
12 ******************************************************************************
13 */
14
15 #if !defined escript_DataProf_20050620_H
16 #define escript_DataProf_20050620_H
17
18 using namespace std;
19
20 namespace escript {
21
22 typedef struct profDataEntry {
23 int interpolate;
24 int grad;
25 int integrate;
26 int where;
27 int unary;
28 int binary;
29 int reduction1;
30 int reduction2;
31 int slicing;
32 } profDataEntry;
33
34 /**
35 \brief
36 Class used for tracking profiling data within the escript Data class.
37
38 Description:
39 Give a detailed description of DataProf
40
41 Template Parameters:
42 For templates describe any conditions that the parameters used in the
43 template must satisfy
44 */
45 class DataProf {
46
47 public:
48
49 /**
50 \brief
51 Default constructor for DataProf
52
53 Description:
54 Default constructor for DataProf
55
56 Preconditions:
57 Describe any preconditions
58
59 Throws:
60 Describe any exceptions thrown
61 */
62 DataProf();
63
64 /**
65 \brief
66 Default destructor for DataProf
67
68 Description:
69 Default destructor for DataProf
70
71 Preconditions:
72 Describe any preconditions
73
74 Throws:
75 Describe any exceptions thrown
76 */
77 ~DataProf();
78
79 /**
80 \brief
81 Return a new table entry for tracking profiling data on
82 an escript Data object.
83
84 Description:
85 Return a new table entry for tracking profiling data on
86 an escript Data object.
87
88 Preconditions:
89 Describe any preconditions
90
91 Throws:
92 Describe any exceptions thrown
93 */
94 profDataEntry*
95 newData();
96
97 /**
98 \brief
99 Dump the contents of a profData entry as a formatted string.
100
101 Description:
102 Dump the contents of a profData entry as a formatted string.
103
104 Preconditions:
105 Describe any preconditions
106
107 Throws:
108 Describe any exceptions thrown
109 */
110 string
111 dumpProf(profDataEntry* entry);
112
113 /**
114 \brief
115 Compress the contents of profData table and dump as a formatted string.
116
117 Description:
118 Compress the contents of profData table and dump as a formatted string.
119
120 Preconditions:
121 Describe any preconditions
122
123 Throws:
124 Describe any exceptions thrown
125 */
126 string
127 compProf();
128
129 protected:
130
131 private:
132
133 typedef struct profDataTable {
134 struct profDataEntry* data;
135 struct profDataTable* next;
136 } profDataTable;
137
138 profDataTable* profDataTable_Root;
139
140 int totalDataObjects;
141
142 };
143
144 } // end of namespace
145
146 #endif

Properties

Name Value
svn:eol-style native
svn:keywords Author Date Id Revision

  ViewVC Help
Powered by ViewVC 1.1.26