diff options
Diffstat (limited to 'project2/if.h')
-rw-r--r-- | project2/if.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/project2/if.h b/project2/if.h new file mode 100644 index 0000000..403f4b0 --- /dev/null +++ b/project2/if.h @@ -0,0 +1,29 @@ +#ifndef IF_H +#define IF_H + +#include "iterate.h" +#include "rowView.h" +#include "paramChecker.h" + +class IfSet : public virtual IntrusivePtrBase { + public: + IfSet(const xmlpp::Element *); + bool passes() const; + + private: + enum Mode { And, Or }; + Mode mode; + OrderedParamCheckers checks; +}; + +class If : public Iterate, public RowView, public IfSet { + public: + If(const xmlpp::Element *); + + virtual void loadComplete(const CommonObjects*); + virtual void execute(const Presenter*) const; + virtual void execute() const; +}; + +#endif + |