ESyS-Particle  4.0.1
IGParam.h
1 
2 // //
3 // Copyright (c) 2003-2011 by The University of Queensland //
4 // Earth Systems Science Computational Centre (ESSCC) //
5 // http://www.uq.edu.au/esscc //
6 // //
7 // Primary Business: Brisbane, Queensland, Australia //
8 // Licensed under the Open Software License version 3.0 //
9 // http://www.opensource.org/licenses/osl-3.0.php //
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