39 lines
744 B
C
39 lines
744 B
C
|
#ifndef __SAS__OPERATOR_H
|
||
|
#define __SAS__OPERATOR_H
|
||
|
|
||
|
#include <string>
|
||
|
#include <vector>
|
||
|
|
||
|
#include <plasp/sas/Effect.h>
|
||
|
#include <plasp/sas/Variable.h>
|
||
|
|
||
|
namespace plasp
|
||
|
{
|
||
|
namespace sas
|
||
|
{
|
||
|
|
||
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
|
//
|
||
|
// Operator
|
||
|
//
|
||
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
struct Operator
|
||
|
{
|
||
|
using Condition = AssignedVariable;
|
||
|
using Conditions = std::vector<Condition>;
|
||
|
using Effects = std::vector<Effect>;
|
||
|
|
||
|
std::string name;
|
||
|
Conditions preconditions;
|
||
|
Effects effects;
|
||
|
size_t costs;
|
||
|
};
|
||
|
|
||
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
}
|
||
|
}
|
||
|
|
||
|
#endif
|