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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 964 - (hide annotations)
Tue Feb 13 05:10:26 2007 UTC (12 years, 8 months ago) by gross
File MIME type: text/plain
File size: 3829 byte(s)
The set/getRefVal functions of Data objects have been removed (mainly to avoid later problems with MPI).
Moreover, a faster access to the reference id of samples has been introduced. I don't think that anybody will
profit form this at this stage but it will allow a faster dump of data objects.


1 jgs 82 /*
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 82 */
12 jgs 115
13     #if !defined escript_NullDomain_20040604_H
14 jgs 82 #define escript_NullDomain_20040604_H
15 woo409 757 #include "system_dep.h"
16 jgs 82
17 jgs 474 #include "AbstractDomain.h"
18 jgs 82
19     #include <string>
20    
21     namespace escript {
22    
23     /**
24     \brief
25     NullDomain provides a null value for domain. Needed for the construction
26     of a default FunctionSpace.
27    
28     Description:
29     NullDomain provides a null value for domain. Needed for the construction
30 jgs 115 of a default FunctionSpace. Inherits from AbstractDomain and overrides its
31     methods.
32 jgs 82 */
33 jgs 115
34 jgs 82 class NullDomain : public AbstractDomain {
35    
36     public:
37    
38     /**
39     \brief
40 jgs 117 Default constructor for NullDomain.
41 jgs 82
42     Description:
43 jgs 117 Default constructor for NullDomain.
44 jgs 82
45     */
46 woo409 757 ESCRIPT_DLL_API
47 jgs 82 NullDomain();
48 jgs 115
49 jgs 82 /**
50     \brief
51     Returns true if the given integer is a valid function space type
52     for this domain.
53     */
54 woo409 757 ESCRIPT_DLL_API
55 jgs 82 virtual bool isValidFunctionSpaceType(int functionSpaceType) const;
56 jgs 115
57 jgs 82 /**
58     \brief
59 jgs 117 Return a description for this domain.
60 jgs 82 */
61 woo409 757 ESCRIPT_DLL_API
62 jgs 82 virtual std::string getDescription() const;
63 jgs 115
64 jgs 82 /**
65     \brief
66 jgs 117 Return a continuous FunctionSpace.
67 jgs 82 */
68 woo409 757 ESCRIPT_DLL_API
69 jgs 82 virtual int getContinuousFunctionCode() const;
70 jgs 115
71 jgs 82 /**
72     \brief
73 jgs 117 Return a function FunctionSpace.
74 jgs 82 */
75 woo409 757 ESCRIPT_DLL_API
76 jgs 82 virtual int getFunctionCode() const;
77 jgs 115
78 jgs 82 /**
79     \brief
80 jgs 117 Return a function on boundary FunctionSpace.
81 jgs 82 */
82 woo409 757 ESCRIPT_DLL_API
83 jgs 82 virtual int getFunctionOnBoundaryCode() const;
84 jgs 115
85 jgs 82 /**
86     \brief
87 jgs 117 Return a FunctionSpace.
88 jgs 82 */
89 woo409 757 ESCRIPT_DLL_API
90 jgs 82 virtual int getFunctionOnContactZeroCode() const;
91 jgs 115
92 jgs 82 /**
93     \brief
94 jgs 117 Return a FunctionSpace.
95 jgs 82 */
96 woo409 757 ESCRIPT_DLL_API
97 jgs 82 virtual int getFunctionOnContactOneCode() const;
98 jgs 115
99 jgs 82 /**
100     \brief
101 jgs 117 Return a FunctionSpace.
102 jgs 82 */
103 woo409 757 ESCRIPT_DLL_API
104 jgs 82 virtual int getSolutionCode() const;
105 jgs 115
106 jgs 82 /**
107     \brief
108 jgs 117 Return a FunctionSpace.
109 jgs 82 */
110 woo409 757 ESCRIPT_DLL_API
111 jgs 82 virtual int getReducedSolutionCode() const;
112 jgs 115
113 jgs 82 /**
114     \brief
115 jgs 117 Return a FunctionSpace.
116 jgs 82 */
117 woo409 757 ESCRIPT_DLL_API
118 jgs 82 virtual int getDiracDeltaFunctionCode() const;
119 jgs 115
120     /**
121 jgs 82 \brief
122     Return the number of data points per sample, and the number of samples as a pair.
123     \param functionSpaceCode Input - Code for the function space type.
124     \return pair, first - number of data points per sample, second - number of samples
125     */
126 woo409 757 ESCRIPT_DLL_API
127 jgs 82 virtual std::pair<int,int> getDataShape(int functionSpaceCode) const;
128 jgs 115
129 jgs 82 /**
130     \brief
131     Return the tag key for the given sample number.
132     \param functionSpaceType Input - The function space type.
133     \param sampleNo Input - The sample number.
134     */
135 woo409 757 ESCRIPT_DLL_API
136 jgs 82 virtual int getTagFromSampleNo(int functionSpaceType, int sampleNo) const;
137 jgs 115
138 jgs 82 /**
139     \brief
140 gross 964 Return a borrowed pointer to the sample reference number id list
141 jgs 110 \param functionSpaceType Input - The function space type.
142 jgs 82 */
143 woo409 757 ESCRIPT_DLL_API
144 gross 964 virtual int* borrowSampleReferenceIDs(int functionSpaceType) const;
145 jgs 115
146 jgs 110 /**
147     \brief
148     */
149 woo409 757 ESCRIPT_DLL_API
150 jgs 82 virtual int getDim() const;
151 jgs 115
152 jgs 121 /**
153     \brief
154     Return true if given domains are equal.
155     */
156 woo409 757 ESCRIPT_DLL_API
157 jgs 121 virtual bool operator==(const AbstractDomain& other) const;
158 woo409 757 ESCRIPT_DLL_API
159 jgs 121 virtual bool operator!=(const AbstractDomain& other) const;
160    
161 jgs 82 protected:
162    
163     private:
164 jgs 115
165 jgs 82 };
166    
167     } // end of namespace
168 jgs 117
169 jgs 82 #endif

Properties

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

  ViewVC Help
Powered by ViewVC 1.1.26