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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 615 - (show annotations)
Wed Mar 22 02:12:00 2006 UTC (13 years, 5 months ago) by elspeth
File MIME type: text/plain
File size: 2904 byte(s)
More copyright information.

1 /*
2 ************************************************************
3 * Copyright 2006 by ACcESS MNRF *
4 * *
5 * http://www.access.edu.au *
6 * Primary Business: Queensland, Australia *
7 * Licensed under the Open Software License version 3.0 *
8 * http://www.opensource.org/licenses/osl-3.0.php *
9 * *
10 ************************************************************
11 */
12
13 #if !defined escript_DataProf_20050620_H
14 #define escript_DataProf_20050620_H
15
16 #include <string>
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