Simpatico  v1.10
CoulombFactory.h
1 #ifndef MCMD_COULOMB_FACTORY_H
2 #define MCMD_COULOMB_FACTORY_H
3 
4 /*
5 * Simpatico - Simulation Package for Polymeric and Molecular Liquids
6 *
7 * Copyright 2010 - 2012, David Morse (morse012@umn.edu)
8 * Distributed under the terms of the GNU General Public License.
9 */
10 
11 #include <util/param/Factory.h> // base class template
12 #include <mcMd/potentials/coulomb/MdCoulombPotential.h> // template argument
13 #include <mcMd/potentials/coulomb/MdEwaldPotential.h>
14 
15 #include <string>
16 #include <vector>
17 
18 namespace McMd
19 {
20 
21  class System;
22 
28  class CoulombFactory : public Factory<MdCoulombPotential>
29  {
30 
31  public:
32 
36  CoulombFactory(System& system);
37 
41  MdCoulombPotential* factory(const std::string& subclass) const;
42 
43  private:
44 
45  // Pointer to the parent System.
46  System* systemPtr_;
47 
48  };
49 
50 }
51 #endif
Coulomb potential for an Md simulation.
MdCoulombPotential * factory(const std::string &subclass) const
Return a pointer to a new CoulombPotential, if possible.
A set of interacting Molecules enclosed by a Boundary.
Definition: System.h:115
CoulombFactory(System &system)
Default constructor.
Factory for CoulombPotential objects.
Single-processor Monte Carlo (MC) and molecular dynamics (MD).
Factory template.
Definition: Factory.h:32