Files
2017-04-11 15:49:21 +02:00

44 lines
923 B
C++
Executable File

#pragma once
#include <wfr/common/wep/AbstractWepNode.h>
// Forward declarations
namespace wfr {
namespace enactment {
class WepBuilder;
}
namespace wfs {
class ActivityInstance;
}
// Main namespace
namespace wep {
class ActivityWepNode : public AbstractWepNode {
friend class enactment::WepBuilder;
// Mutable properties that need to be accessed via getter-/setter-functions.
protected:
wfr::wfs::ActivityInstanceStatus lastKnownActivityStatus;
// Invariant properties that can be accessed directly.
public:
wfs::ActivityInstance& activity;
public:
ActivityWepNode(WepNodeType nodeType, wfs::ActivityInstance& activity) noexcept;
virtual void addToVisitationCount(uint64_t val = 1) noexcept override;
virtual wfs::ActivityInstanceStatus getLastKnownInstanceStatus() const noexcept { return lastKnownActivityStatus; }
virtual void updateInstanceStatus();
};
} /* namespace wep */
} /* namespace wfr */