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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 757 - (hide annotations)
Mon Jun 26 13:12:56 2006 UTC (13 years, 3 months ago) by woo409
File MIME type: text/plain
File size: 2944 byte(s)
+ Merge of intelc_win32 branch (revision 741:755) with trunk. Tested on iVEC altix (run_tests and py_tests all pass)

1 jgs 123 /*
2 elspeth 615 ************************************************************
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 jgs 123 */
12    
13     #if !defined escript_DataProf_20050620_H
14     #define escript_DataProf_20050620_H
15 woo409 757 #include "system_dep.h"
16 jgs 123
17 jgs 474 #include <string>
18    
19 jgs 123 using namespace std;
20    
21     namespace escript {
22    
23     typedef struct profDataEntry {
24     int interpolate;
25     int grad;
26     int integrate;
27     int where;
28     int unary;
29     int binary;
30     int reduction1;
31     int reduction2;
32     int slicing;
33     } profDataEntry;
34    
35     /**
36     \brief
37     Class used for tracking profiling data within the escript Data class.
38    
39     Description:
40     Give a detailed description of DataProf
41    
42     Template Parameters:
43     For templates describe any conditions that the parameters used in the
44     template must satisfy
45     */
46 woo409 757 class ESCRIPT_DLL_API DataProf {
47 jgs 123
48     public:
49    
50     /**
51     \brief
52     Default constructor for DataProf
53    
54     Description:
55     Default constructor for DataProf
56    
57     Preconditions:
58     Describe any preconditions
59    
60     Throws:
61     Describe any exceptions thrown
62     */
63     DataProf();
64    
65     /**
66     \brief
67     Default destructor for DataProf
68    
69     Description:
70     Default destructor for DataProf
71    
72     Preconditions:
73     Describe any preconditions
74    
75     Throws:
76     Describe any exceptions thrown
77     */
78     ~DataProf();
79    
80     /**
81     \brief
82     Return a new table entry for tracking profiling data on
83     an escript Data object.
84    
85     Description:
86     Return a new table entry for tracking profiling data on
87     an escript Data object.
88    
89     Preconditions:
90     Describe any preconditions
91    
92     Throws:
93     Describe any exceptions thrown
94     */
95     profDataEntry*
96     newData();
97    
98     /**
99     \brief
100     Dump the contents of a profData entry as a formatted string.
101    
102     Description:
103     Dump the contents of a profData entry as a formatted string.
104    
105     Preconditions:
106     Describe any preconditions
107    
108     Throws:
109     Describe any exceptions thrown
110     */
111     string
112     dumpProf(profDataEntry* entry);
113    
114     /**
115     \brief
116     Compress the contents of profData table and dump as a formatted string.
117    
118     Description:
119     Compress the contents of profData table and dump as a formatted string.
120    
121     Preconditions:
122     Describe any preconditions
123    
124     Throws:
125     Describe any exceptions thrown
126     */
127     string
128     compProf();
129    
130     protected:
131    
132     private:
133    
134     typedef struct profDataTable {
135     struct profDataEntry* data;
136     struct profDataTable* next;
137     } profDataTable;
138    
139     profDataTable* profDataTable_Root;
140    
141     int totalDataObjects;
142    
143     };
144    
145     } // end of namespace
146    
147     #endif

Properties

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

  ViewVC Help
Powered by ViewVC 1.1.26