ESyS-Particle  2.3.4
IGParam.h
Go to the documentation of this file.
1 // //
3 // Copyright (c) 2003-2017 by The University of Queensland //
4 // Centre for Geoscience Computing //
5 // http://earth.uq.edu.au/centre-geoscience-computing //
6 // //
7 // Primary Business: Brisbane, Queensland, Australia //
8 // Licensed under the Open Software License version 3.0 //
9 // http://www.apache.org/licenses/LICENSE-2.0 //
10 // //
12 
13 #ifndef __IGPARAM_H
14 #define __IGPARAM_H
15 
16 #include "Parallel/mpivbuf.h"
17 
18 // -- STL includes --
19 #include <string>
20 
28 class AIGParam
29 {
30 private:
31  std::string m_name;
32 
33 public:
34  AIGParam(const std::string &name = "");
35 
36  virtual ~AIGParam();
37 
38  virtual void packInto(CVarMPIBuffer*) const;
39 
40  void setName(const std::string &name);
41 
42  const std::string &getName() const {return m_name;}
43 
44  const std::string &Name() const {return getName();}
45 
46  virtual std::string getTypeString() const = 0;
47 
48  // friend class AInteractionGroup;
49 };
50 
51 #endif //__IGPARAM_H
AIGParam::~AIGParam
virtual ~AIGParam()
Definition: IGParam.cpp:19
CVarMPIBuffer
MPI send/recv buffer with automagically adjusted size.
Definition: mpivbuf.h:35
AIGParam::m_name
std::string m_name
Definition: IGParam.h:31
AIGParam::packInto
virtual void packInto(CVarMPIBuffer *) const
Definition: IGParam.cpp:23
CVarMPIBuffer::append
virtual void append(int)
Definition: mpivbuf.cpp:152
AIGParam::setName
void setName(const std::string &name)
Definition: IGParam.cpp:28
mpivbuf.h
AIGParam
Abstract base class for InteractionGroup parameters.
Definition: IGParam.h:29
AIGParam::getTypeString
virtual std::string getTypeString() const =0
AIGParam::getName
const std::string & getName() const
Definition: IGParam.h:42
IGParam.h
AIGParam::AIGParam
AIGParam(const std::string &name="")
Definition: IGParam.cpp:15
AIGParam::Name
const std::string & Name() const
Definition: IGParam.h:44