#ifndef CONDITIONS_H
#define CONDITIONS_H
#include <String.h>
class BMessage;
class ConditionContext {
public:
virtual bool IsSafeMode() const = 0;
virtual bool BootVolumeIsReadOnly() const = 0;
};
class Condition {
public:
Condition();
virtual ~Condition();
virtual bool Test(ConditionContext& context) const = 0;
virtual bool IsConstant(ConditionContext& context) const;
virtual BString ToString() const = 0;
};
class Conditions {
public:
static Condition* FromMessage(const BMessage& message);
static Condition* AddNotSafeMode(Condition* condition);
};
#endif