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

Diff of /trunk/escript/src/AbstractDomain.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 797 by gross, Thu Aug 3 02:03:18 2006 UTC revision 1800 by ksteube, Thu Sep 18 05:28:20 2008 UTC
# Line 1  Line 1 
 // $Id$  
 /*  
  ************************************************************  
  *          Copyright 2006 by ACcESS MNRF                   *  
  *                                                          *  
  *              http://www.access.edu.au                    *  
  *       Primary Business: Queensland, Australia            *  
  *  Licensed under the Open Software License version 3.0    *  
  *     http://www.opensource.org/licenses/osl-3.0.php       *  
  *                                                          *  
  ************************************************************  
1    
2  */  /* $Id$ */
3    
4    /*******************************************************
5     *
6     *           Copyright 2003-2007 by ACceSS MNRF
7     *       Copyright 2007 by University of Queensland
8     *
9     *                http://esscc.uq.edu.au
10     *        Primary Business: Queensland, Australia
11     *  Licensed under the Open Software License version 3.0
12     *     http://www.opensource.org/licenses/osl-3.0.php
13     *
14     *******************************************************/
15    
16  #if !defined escript_AbstractDomain_20040609_H  #if !defined escript_AbstractDomain_20040609_H
17  #define escript_AbstractDomain_20040609_H  #define escript_AbstractDomain_20040609_H
# Line 20  Line 21 
21  #include <string>  #include <string>
22  #include <map>  #include <map>
23  #include <boost/python/dict.hpp>  #include <boost/python/dict.hpp>
24    #include <boost/python/list.hpp>
25    #include "paso/Paso_MPI.h"
26    
27  namespace escript {  namespace escript {
28  // class forward declarations  // class forward declarations
# Line 86  class AbstractDomain { Line 89  class AbstractDomain {
89    
90    /**    /**
91       \brief       \brief
92         return the number of processors used for this domain
93      */
94      ESCRIPT_DLL_API
95      virtual int getMPISize() const;
96      /**
97         \brief
98         return the number MPI rank of this processor
99      */
100    
101      ESCRIPT_DLL_API
102      virtual int getMPIRank() const;
103      /**
104         \brief
105         return the MPI communicator
106      */
107    
108      ESCRIPT_DLL_API
109      virtual MPI_Comm getMPIComm() const;
110    
111    
112    
113      /**
114         \brief
115       Returns true if the given integer is a valid function space type       Returns true if the given integer is a valid function space type
116       for this domain.       for this domain.
117    */    */
# Line 135  class AbstractDomain { Line 161  class AbstractDomain {
161    
162    /**    /**
163       \brief       \brief
164         dumps the domain to an external file filename.
165    
166         This has to be implemented by the actual Domain adapter.
167      */
168      ESCRIPT_DLL_API
169      virtual void dump(const std::string& filename) const;
170    
171      /**
172         \brief
173       Return the number of data points per sample, and the number of samples as a pair.       Return the number of data points per sample, and the number of samples as a pair.
174    
175       This has to be implemented by the actual Domain adapter.       This has to be implemented by the actual Domain adapter.
# Line 156  class AbstractDomain { Line 191  class AbstractDomain {
191    
192    /**    /**
193       \brief       \brief
194       Return the reference number of the given sample number.       sets a map from a clear tag name to a tag key
195         \param name Input - tag name.
196         \param tag Input - tag key.
197      */
198      ESCRIPT_DLL_API
199      virtual void setTagMap(const std::string& name,  int tag);
200    
201      /**
202         \brief
203         Return the tag key for tag name.
204         \param name Input - tag name
205      */
206      ESCRIPT_DLL_API
207      virtual int getTag(const std::string& name) const;
208    
209      /**
210         \brief
211         Returns True if name is a defined tag name
212         \param name Input - tag name
213      */
214      ESCRIPT_DLL_API
215      virtual bool isValidTagName(const std::string& name) const;
216    
217      /**
218         \brief
219         Returns all tag names in a single string sperated by commas
220      */
221      ESCRIPT_DLL_API
222      virtual std::string showTagNames() const;
223    
224      /**
225         \brief
226         Return a borrowed pointer to the sample reference number id list
227       \param functionSpaceType Input - The function space type.       \param functionSpaceType Input - The function space type.
      \param sampleNo Input - The sample number.  
228    */    */
229    ESCRIPT_DLL_API    ESCRIPT_DLL_API
230    virtual int getReferenceNoFromSampleNo(int functionSpaceType, int sampleNo) const;    virtual int* borrowSampleReferenceIDs(int functionSpaceType) const;
231    
232    /**    /**
233       \brief       \brief
# Line 319  class AbstractDomain { Line 385  class AbstractDomain {
385    ESCRIPT_DLL_API    ESCRIPT_DLL_API
386    void throwStandardException(const std::string& functionName) const;    void throwStandardException(const std::string& functionName) const;
387    
388      /**
389            \brief
390                      return the number of tags in use and a pointer to an array with the number of tags in use
391      */
392      ESCRIPT_DLL_API
393      virtual int getNumberOfTagsInUse(int functionSpaceCode) const;
394    
395      ESCRIPT_DLL_API
396      virtual int* borrowListOfTagsInUse(int functionSpaceCode) const;
397    
398    
399    
400   protected:   protected:
401    
402   private:   private:

Legend:
Removed from v.797  
changed lines
  Added in v.1800

  ViewVC Help
Powered by ViewVC 1.1.26