16 #define RAPIDJSON_HAS_STDSTRING 1
17 #include "DomainEffect.h"
18 #include "DomainOperator.h"
19 #include "GroundedFormula.h"
20 #include "PDDLGrounding.h"
22 #include <rapidjson/fwd.h>
61 virtual std::string
to_json(
bool pretty =
false)
const;
66 virtual void to_json_value(rapidjson::Document &d, rapidjson::Value &v)
const;
72 virtual void from_json(
const std::string &json);
88 virtual void validate(
bool subcall =
false)
const;
95 std::optional<std::string>
112 std::optional<std::string>
129 std::optional<int64_t>
146 std::optional<std::string>
149 return operator_name_;
163 std::vector<std::string>
166 return param_values_;
218 return dispatch_time_;
232 std::optional<std::string>
266 std::shared_ptr<DomainOperator>
283 std::shared_ptr<PDDLGrounding>
286 return precondition_;
300 std::vector<std::shared_ptr<DomainEffect>>
320 effects_.push_back(std::move(
effects));
338 effects_.push_back(std::make_shared<DomainEffect>(std::move(
effects)));
343 std::shared_ptr<GroundedFormula>
346 return preconditions_;
359 std::optional<std::string> kind_;
360 std::optional<std::string> apiVersion_;
361 std::optional<int64_t> id_;
362 std::optional<std::string> operator_name_;
363 std::vector<std::string> param_values_;
364 std::optional<float> duration_;
365 std::optional<float> dispatch_time_;
366 std::optional<std::string> state_;
367 std::optional<bool> executable_;
368 std::shared_ptr<DomainOperator> _operator_;
369 std::shared_ptr<PDDLGrounding> precondition_;
370 std::vector<std::shared_ptr<DomainEffect>> effects_;
371 std::shared_ptr<GroundedFormula> preconditions_;
DomainEffect representation for JSON transfer.
PlanAction representation for JSON transfer.
std::optional< int64_t > id() const
Get id value.
std::vector< std::string > param_values() const
Get param-values value.
std::optional< bool > executable() const
Get executable value.
std::shared_ptr< DomainOperator > _operator() const
Get operator value.
std::optional< std::string > kind() const
Get kind value.
void set_duration(const float &duration)
Set duration value.
void set_kind(const std::string &kind)
Set kind value.
std::optional< std::string > apiVersion() const
Get apiVersion value.
void set_effects(const std::vector< std::shared_ptr< DomainEffect >> &effects)
Set effects value.
void addto_param_values(const std::string &¶m_values)
Add element to param-values array.
virtual ~PlanAction()
Destructor.
void addto_param_values(const std::string ¶m_values)
Add element to param-values array.
void set_state(const std::string &state)
Set state value.
void addto_effects(const DomainEffect &&effects)
Add element to effects array.
void addto_effects(const std::shared_ptr< DomainEffect > &&effects)
Add element to effects array.
void set_param_values(const std::vector< std::string > ¶m_values)
Set param-values value.
std::vector< std::shared_ptr< DomainEffect > > effects() const
Get effects value.
void set_precondition(const std::shared_ptr< PDDLGrounding > &precondition)
Set precondition value.
virtual void from_json(const std::string &json)
Retrieve data from JSON string.
virtual std::string to_json(bool pretty=false) const
Render object to JSON.
void set_dispatch_time(const float &dispatch_time)
Set dispatch-time value.
virtual void validate(bool subcall=false) const
Validate if all required fields have been set.
std::optional< float > duration() const
Get duration value.
std::shared_ptr< GroundedFormula > preconditions() const
Get preconditions value.
void set_executable(const bool &executable)
Set executable value.
void set_operator_name(const std::string &operator_name)
Set operator-name value.
void set_apiVersion(const std::string &apiVersion)
Set apiVersion value.
std::optional< std::string > operator_name() const
Get operator-name value.
void addto_effects(const std::shared_ptr< DomainEffect > &effects)
Add element to effects array.
void set__operator(const std::shared_ptr< DomainOperator > &_operator)
Set operator value.
static std::string api_version()
Get version of implemented API.
std::shared_ptr< PDDLGrounding > precondition() const
Get precondition value.
std::optional< std::string > state() const
Get state value.
std::optional< float > dispatch_time() const
Get dispatch-time value.
virtual void to_json_value(rapidjson::Document &d, rapidjson::Value &v) const
Render object to JSON.
void set_id(const int64_t &id)
Set id value.
virtual void from_json_value(const rapidjson::Value &v)
Retrieve data from JSON string.
void set_preconditions(const std::shared_ptr< GroundedFormula > &preconditions)
Set preconditions value.