Simpatico  v1.10
mcMd/potentials/bond/BondFactory.h
1 #ifndef MCMD_BOND_FACTORY_H
2 #define MCMD_BOND_FACTORY_H
3 
4 /*
5 * Simpatico - Simulation Package for Polymeric and Molecular Liquids
6 *
7 * Copyright 2010 - 2017, The Regents of the University of Minnesota
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/bond/BondPotential.h> // template argument
13 
14 #include <string>
15 #include <vector>
16 
17 namespace McMd
18 {
19 
20  class System;
21 
27  class BondFactory : public Factory<BondPotential>
28  {
29 
30  public:
31 
35  BondFactory(System& system);
36 
40  BondPotential* factory(const std::string& subclass) const;
41 
42  private:
43 
44  // Pointer to the parent System.
45  System* systemPtr_;
46 
47  };
48 
49 }
50 #endif
BondPotential * factory(const std::string &subclass) const
Return a pointer to a new BondPotential, if possible.
A set of interacting Molecules enclosed by a Boundary.
Definition: System.h:115
BondFactory(System &system)
Default constructor.
Factory for BondPotential objects.
Single-processor Monte Carlo (MC) and molecular dynamics (MD).
Abstract Bond Potential class.
Factory template.
Definition: Factory.h:32