Bridge++  Version 1.5.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
action_list.h
Go to the documentation of this file.
1 
14 #ifndef ACTION_LIST_INCLUDED
15 #define ACTION_LIST_INCLUDED
16 
17 #include "Action/action.h"
18 
19 #include "IO/bridgeIO.h"
20 
38 typedef std::vector<Action *> ActionSet;
39 
41 {
42  public:
43  static const std::string class_name;
44 
45  public:
46  ActionList(const int nlevel);
47 
48  public:
49  bool append(const int level, Action *action);
50  bool append(const int level, unique_ptr<Action>& action);
51  bool append(const int level, const std::vector<Action *>& actions);
52 
53  bool set_integrator_type(const int level, const std::string& type);
54  bool set_integrator_type(const std::string& type); // for all levels
55 
56  ActionSet get_actions() const;
57  ActionSet get_actions(const int level) const;
58  std::string get_integrator_type(const int level) const;
59  int get_levels() const;
60 
61  protected:
63 
64  private:
65  int m_Nlevels;
66  std::vector<ActionSet> m_actions;
67  std::vector<std::string> m_integrator_types;
68 };
69 #endif
Bridge::VerboseLevel m_vl
Definition: action_list.h:62
ActionList(const int nlevel)
Definition: action_list.cpp:19
int get_levels() const
static const std::string class_name
Definition: action_list.h:43
Base class of HMC action class family.
Definition: action.h:36
bool append(const int level, Action *action)
Definition: action_list.cpp:27
int m_Nlevels
Definition: action_list.h:65
ActionSet get_actions() const
Definition: action_list.cpp:89
std::vector< std::string > m_integrator_types
Definition: action_list.h:67
lists of actions at respective integrator levels.
Definition: action_list.h:40
VerboseLevel
Definition: bridgeIO.h:42
std::vector< ActionSet > m_actions
Definition: action_list.h:66
std::string get_integrator_type(const int level) const
bool set_integrator_type(const int level, const std::string &type)
Definition: action_list.cpp:64
std::vector< Action * > ActionSet
Definition: action_list.h:38