All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
ShortcutVessel.h
Go to the documentation of this file.
1 /* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2  Copyright (c) 2013 The plumed team
3  (see the PEOPLE file at the root of the distribution for a list of names)
4 
5  See http://www.plumed-code.org for more information.
6 
7  This file is part of plumed, version 2.0.
8 
9  plumed is free software: you can redistribute it and/or modify
10  it under the terms of the GNU Lesser General Public License as published by
11  the Free Software Foundation, either version 3 of the License, or
12  (at your option) any later version.
13 
14  plumed is distributed in the hope that it will be useful,
15  but WITHOUT ANY WARRANTY; without even the implied warranty of
16  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17  GNU Lesser General Public License for more details.
18 
19  You should have received a copy of the GNU Lesser General Public License
20  along with plumed. If not, see <http://www.gnu.org/licenses/>.
21 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
22 #ifndef __PLUMED_vesselbase_ShortcutVessel_h
23 #define __PLUMED_vesselbase_ShortcutVessel_h
24 
25 #include <string>
26 #include <cstring>
27 #include <vector>
28 #include "Vessel.h"
29 #include "core/Value.h"
30 
31 namespace PLMD {
32 namespace vesselbase{
33 
34 class ShortcutVessel : public Vessel {
35 protected:
36  void addVessel( const std::string& name, const std::string& intput );
37 public:
38  static void registerKeywords( Keywords& keys );
39  ShortcutVessel( const VesselOptions& );
40  std::string description(){ return ""; }
41  unsigned getNumberOfTerms(){ plumed_error(); return 0; }
42  void resize(){ plumed_error(); }
43  bool calculate(){ plumed_error(); }
44  void finish(){ plumed_error(); }
45  bool applyForce( std::vector<double>& forces ){ plumed_error(); }
46 };
47 
48 }
49 }
50 #endif
51 
ShortcutVessel(const VesselOptions &)
bool calculate()
Calculate the part of the vessel that is done in the loop.
static void registerKeywords(Keywords &keys)
This class holds the keywords and their documentation.
Definition: Keywords.h:36
bool applyForce(std::vector< double > &forces)
Retrieve the forces on the quantities in the vessel.
void addVessel(const std::string &name, const std::string &intput)
void finish()
Complete the calculation once the loop is finished.
std::string description()
Return a description of the vessel contents.
This class is used to pass the input to Vessels.
Definition: Vessel.h:53
unsigned getNumberOfTerms()
Retrieve the number of terms we need to accumulate.
void resize()
Reset the size of the buffers.