MADARA  3.1.8
WaitSettings.h
Go to the documentation of this file.
1 #ifndef _MADARA_WAIT_SETTINGS_
2 #define _MADARA_WAIT_SETTINGS_
3 
12 #include <string>
14 
15 namespace madara
16 {
17  namespace knowledge
18  {
23  struct WaitSettings : public EvalSettings
24  {
25  /* Convenient pre-defined settings objects for common use cases */
26 
28  static const WaitSettings DEFAULT;
29 
31  static const WaitSettings NO_EXPAND;
32 
34  static const WaitSettings DELAY;
35 
38 
43  : EvalSettings (), poll_frequency (0.100), max_wait_time (-1.0)
44  {
45  }
46 
76  WaitSettings (bool t_delay_sending_modifieds,
77  bool t_treat_globals_as_locals,
78  bool t_signal_updates,
79  bool t_always_overwrite,
80  bool t_always_expand,
81  bool t_track_local_changes,
82  std::string t_pre_print_statement,
83  std::string t_post_print_statement,
84  double t_poll_frequency, double t_max_wait_time,
85  uint64_t t_clock_increment = 1,
86  bool t_treat_locals_as_globals = false)
87  : EvalSettings (t_delay_sending_modifieds,
88  t_treat_globals_as_locals, t_signal_updates,
89  t_always_overwrite, t_always_expand, t_track_local_changes,
90  t_pre_print_statement, t_post_print_statement,
91  t_clock_increment, t_treat_locals_as_globals),
92  poll_frequency (t_poll_frequency), max_wait_time (t_max_wait_time)
93  {
94  }
95 
99  WaitSettings (const WaitSettings & rhs)
100  : EvalSettings (rhs),
102  {
103  }
104 
109 
114  };
115 
116  }
117 }
118 #endif // _MADARA_WAIT_SETTINGS_
double max_wait_time
Maximum time to wait for an expression to become true (in seconds)
Definition: WaitSettings.h:113
static const WaitSettings DELAY_NO_EXPAND
Settings to delay sending modifieds, and not expand variables.
Definition: WaitSettings.h:37
WaitSettings(bool t_delay_sending_modifieds, bool t_treat_globals_as_locals, bool t_signal_updates, bool t_always_overwrite, bool t_always_expand, bool t_track_local_changes, std::string t_pre_print_statement, std::string t_post_print_statement, double t_poll_frequency, double t_max_wait_time, uint64_t t_clock_increment=1, bool t_treat_locals_as_globals=false)
Constructor.
Definition: WaitSettings.h:76
WaitSettings(const WaitSettings &rhs)
Copy constructor.
Definition: WaitSettings.h:99
double poll_frequency
Frequency to poll an expression for truth (in seconds)
Definition: WaitSettings.h:108
static constexpr struct madara::knowledge::tags::string_t string
Encapsulates settings for an evaluation statement.
Definition: EvalSettings.h:26
Provides functions and classes for the distributed knowledge base.
static const WaitSettings DELAY
Settings to delay sending modifieds, but do expand variables.
Definition: WaitSettings.h:34
static const WaitSettings NO_EXPAND
Settings to immediately send modifieds, and not expand variables.
Definition: WaitSettings.h:31
Copyright (c) 2015 Carnegie Mellon University.
Encapsulates settings for a wait statement.
Definition: WaitSettings.h:23
static const WaitSettings DEFAULT
Settings to immediately send modifieds, but do expand variables.
Definition: WaitSettings.h:28