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

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

Parent Directory Parent Directory | Revision Log Revision Log


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

Properties

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

  ViewVC Help
Powered by ViewVC 1.1.26