Proto  3.2
Proto_FinitePointSet.H
Go to the documentation of this file.
1 #pragma once
2 #ifndef _PROTO_FINITE_POINT_SET_
3 #define _PROTO_FINITE_POINT_SET_
4 
5 #include "Proto_Box.H"
6 #include "Proto_ProblemDomain.H"
7 
8 namespace Proto
9 {
10 
12  {
13  public:
14 
15  // no reason to be doing these things
16  FinitePointSet(const FinitePointSet& a_pointSet) = delete;
17  FinitePointSet& operator=(const FinitePointSet& a_pointSet) = delete;
18 
19  inline FinitePointSet(Box a_domain, Array<bool, DIM> a_periodic);
20  inline FinitePointSet(Box a_domain, bool a_periodic);
21  inline FinitePointSet(ProblemDomain a_domain);
22  inline ~FinitePointSet();
23 
24  inline bool add(Point a_point);
25  inline void exchange();
26  inline void exchange_old();
27  inline void clear();
28  inline std::vector<Point> points();
29  inline const std::vector<Point>& localPoints() const {return m_pointBuffer;}
30  private:
31 
33  std::vector<Point> m_pointBuffer;
34  std::set<Point> m_points;
39 
46  };
47 
48 #include "implem/Proto_FinitePointSetImplem.H"
49 } // end namespace Proto
50 
51 #endif //end include guard
FinitePointSet & operator=(const FinitePointSet &a_pointSet)=delete
void clear()
Definition: Proto_FinitePointSet.H:181
int * m_sendBuffer
Definition: Proto_FinitePointSet.H:36
int * m_localBuffer
Definition: Proto_FinitePointSet.H:44
std::set< Point > m_points
Definition: Proto_FinitePointSet.H:34
int m_sendBufferSize
Definition: Proto_FinitePointSet.H:38
int * m_globalBuffer
Definition: Proto_FinitePointSet.H:45
~FinitePointSet()
Definition: Proto_FinitePointSet.H:63
ProblemDomain m_domain
Definition: Proto_FinitePointSet.H:32
const std::vector< Point > & localPoints() const
Definition: Proto_FinitePointSet.H:29
int * m_bufferOffsets
Definition: Proto_FinitePointSet.H:43
std::vector< Point > m_pointBuffer
Definition: Proto_FinitePointSet.H:33
std::vector< Point > points()
Definition: Proto_FinitePointSet.H:170
bool add(Point a_point)
Definition: Proto_FinitePointSet.H:87
An interval in DIM dimensional space.
Definition: Proto_Box.H:29
int m_globalBufferSize
Definition: Proto_FinitePointSet.H:41
Definition: Proto_FinitePointSet.H:11
Definition: Proto_Array.H:17
void exchange()
Definition: Proto_FinitePointSet.H:103
int * m_recvBuffer
Definition: Proto_FinitePointSet.H:35
Integer Valued Vector.
Definition: Proto_Point.H:24
FinitePointSet(const FinitePointSet &a_pointSet)=delete
int m_localBufferSize
Definition: Proto_FinitePointSet.H:40
int * m_bufferSizes
Definition: Proto_FinitePointSet.H:42
int m_recvBufferSize
Definition: Proto_FinitePointSet.H:37
Represents a rectangular domain over which a problem can be defined, including periodic images...
Definition: Proto_ProblemDomain.H:22