#include <operator.h>
Classes | |
struct | EffCond |
struct | ModuleEffect |
struct | NumericalEffect |
struct | PrePost |
struct | Prevail |
Public Member Functions | |
void | dump () const |
void | dump () const |
bool | enables (const Operator *other) const |
void | generate_cpp_input (ostream &outfile) const |
double | get_duration (const TimeStampedState *state, bool relaxed=false) const |
Calculate the duration of this operator when applied in state. | |
const DurationCond & | get_duration_cond () const |
const int & | get_duration_var () const |
const vector< ModuleEffect > & | get_mod_effs_end () const |
const vector< ModuleEffect > & | get_mod_effs_start () const |
const string & | get_name () const |
string | get_name () const |
const vector< NumericalEffect > & | get_numerical_effs_end () const |
const vector< NumericalEffect > & | get_numerical_effs_start () const |
const vector< PrePost > & | get_pre_post_end () const |
const vector< PrePost > & | get_pre_post_end () const |
const vector< PrePost > & | get_pre_post_start () const |
const vector< PrePost > & | get_pre_post_start () const |
const vector< Prevail > & | get_prevail_end () const |
const vector< Prevail > & | get_prevail_end () const |
const vector< Prevail > & | get_prevail_overall () const |
const vector< Prevail > & | get_prevail_overall () const |
const vector< Prevail > & | get_prevail_start () const |
const vector< Prevail > & | get_prevail_start () const |
bool | is_applicable (const TimeStampedState &state, bool allowRelaxed=false, TimedSymbolicStates *timedSymbolicStates=NULL) const |
Compute applicability of this operator in state. | |
bool | is_redundant () const |
bool | isDisabledBy (const Operator *other) const |
Operator (std::istream &in) | |
Operator (bool uses_concrete_time_information) | |
Operator (istream &in, const vector< Variable * > &variables) | |
bool | operator< (const Operator &other) const |
void | strip_unimportant_effects () |
void | write_effect_conds (ostream &outfile, const vector< EffCond > &conds) const |
void | write_module_effect (ostream &outfile, const vector< ModuleEffect > &mod_effs) const |
void | write_num_effect (ostream &outfile, const vector< NumericalEffect > &num_effs) const |
void | write_pre_posts (ostream &outfile, const vector< PrePost > &pre_posts) const |
void | write_prevails (ostream &outfile, const vector< Prevail > &prevails) const |
virtual | ~Operator () |
Private Member Functions | |
bool | achievesPrecond (const vector< PrePost > &effects, const vector< Prevail > &conds) const |
bool | achievesPrecond (const vector< PrePost > &effs1, const vector< PrePost > &effs2) const |
bool | deletesPrecond (const vector< Prevail > &conds, const vector< PrePost > &effects) const |
bool | deletesPrecond (const vector< PrePost > &effs1, const vector< PrePost > &effs2) const |
void | sort_prevails (vector< Prevail > &prevails) |
bool | writesOnSameVar (const vector< PrePost > &conds, const vector< PrePost > &effects) const |
Private Attributes | |
DurationCond | duration_cond |
int | duration_var |
vector< ModuleEffect > | mod_effs_end |
vector< ModuleEffect > | mod_effs_start |
vector< ModuleEffect > | module_effs_end |
vector< ModuleEffect > | module_effs_start |
string | name |
vector< NumericalEffect > | numerical_effs_end |
vector< NumericalEffect > | numerical_effs_start |
vector< PrePost > | pre_post_end |
vector< PrePost > | pre_post_start |
vector< Prevail > | prevail_end |
vector< Prevail > | prevail_overall |
vector< Prevail > | prevail_start |
Definition at line 13 of file preprocess/operator.h.
Operator::Operator | ( | istream & | in, |
const vector< Variable * > & | variables | ||
) |
Definition at line 10 of file preprocess/operator.cpp.
Operator::Operator | ( | std::istream & | in | ) |
Operator::Operator | ( | bool | uses_concrete_time_information | ) | [explicit] |
Definition at line 147 of file search/operator.cpp.
virtual Operator::~Operator | ( | ) | [inline, virtual] |
Definition at line 91 of file search/operator.h.
bool Operator::achievesPrecond | ( | const vector< PrePost > & | effects, |
const vector< Prevail > & | conds | ||
) | const [private] |
Definition at line 298 of file search/operator.cpp.
bool Operator::achievesPrecond | ( | const vector< PrePost > & | effs1, |
const vector< PrePost > & | effs2 | ||
) | const [private] |
Definition at line 312 of file search/operator.cpp.
bool Operator::deletesPrecond | ( | const vector< Prevail > & | conds, |
const vector< PrePost > & | effects | ||
) | const [private] |
Definition at line 327 of file search/operator.cpp.
bool Operator::deletesPrecond | ( | const vector< PrePost > & | effs1, |
const vector< PrePost > & | effs2 | ||
) | const [private] |
Definition at line 341 of file search/operator.cpp.
void Operator::dump | ( | ) | const |
void Operator::dump | ( | ) | const |
Definition at line 153 of file preprocess/operator.cpp.
bool Operator::enables | ( | const Operator * | other | ) | const |
Definition at line 271 of file search/operator.cpp.
void Operator::generate_cpp_input | ( | ostream & | outfile | ) | const |
Definition at line 389 of file preprocess/operator.cpp.
double Operator::get_duration | ( | const TimeStampedState * | state, |
bool | relaxed = false |
||
) | const |
Calculate the duration of this operator when applied in state.
This function will retrieve the duration and handle cost modules correctly. The state pointer should keep on valid as it can be used for caching in modules.
Definition at line 371 of file search/operator.cpp.
const DurationCond& Operator::get_duration_cond | ( | ) | const [inline] |
Definition at line 116 of file preprocess/operator.h.
const int& Operator::get_duration_var | ( | ) | const [inline] |
Definition at line 63 of file search/operator.h.
const vector<ModuleEffect>& Operator::get_mod_effs_end | ( | ) | const [inline] |
Definition at line 60 of file search/operator.h.
const vector<ModuleEffect>& Operator::get_mod_effs_start | ( | ) | const [inline] |
Definition at line 57 of file search/operator.h.
const string& Operator::get_name | ( | ) | const [inline] |
Definition at line 66 of file search/operator.h.
string Operator::get_name | ( | ) | const [inline] |
Definition at line 113 of file preprocess/operator.h.
const vector<NumericalEffect>& Operator::get_numerical_effs_end | ( | ) | const [inline] |
Definition at line 138 of file preprocess/operator.h.
const vector<NumericalEffect>& Operator::get_numerical_effs_start | ( | ) | const [inline] |
Definition at line 135 of file preprocess/operator.h.
const vector<PrePost>& Operator::get_pre_post_end | ( | ) | const [inline] |
Definition at line 54 of file search/operator.h.
const vector<PrePost>& Operator::get_pre_post_end | ( | ) | const [inline] |
Definition at line 132 of file preprocess/operator.h.
const vector<PrePost>& Operator::get_pre_post_start | ( | ) | const [inline] |
Definition at line 51 of file search/operator.h.
const vector<PrePost>& Operator::get_pre_post_start | ( | ) | const [inline] |
Definition at line 129 of file preprocess/operator.h.
const vector<Prevail>& Operator::get_prevail_end | ( | ) | const [inline] |
Definition at line 48 of file search/operator.h.
const vector<Prevail>& Operator::get_prevail_end | ( | ) | const [inline] |
Definition at line 126 of file preprocess/operator.h.
const vector<Prevail>& Operator::get_prevail_overall | ( | ) | const [inline] |
Definition at line 45 of file search/operator.h.
const vector<Prevail>& Operator::get_prevail_overall | ( | ) | const [inline] |
Definition at line 123 of file preprocess/operator.h.
const vector<Prevail>& Operator::get_prevail_start | ( | ) | const [inline] |
Definition at line 42 of file search/operator.h.
const vector<Prevail>& Operator::get_prevail_start | ( | ) | const [inline] |
Definition at line 120 of file preprocess/operator.h.
bool Operator::is_applicable | ( | const TimeStampedState & | state, |
bool | allowRelaxed = false , |
||
TimedSymbolicStates * | timedSymbolicStates = NULL |
||
) | const |
Compute applicability of this operator in state.
[in] | allowRelaxed | if true, only relaxed module calls will be performed. |
[out] | timedSymbolicStates | if not NULL the timedSymbolicStates will be computed |
Definition at line 200 of file search/operator.cpp.
bool Operator::is_redundant | ( | ) | const |
Definition at line 318 of file preprocess/operator.cpp.
bool Operator::isDisabledBy | ( | const Operator * | other | ) | const |
Definition at line 239 of file search/operator.cpp.
bool Operator::operator< | ( | const Operator & | other | ) | const |
Definition at line 390 of file search/operator.cpp.
void Operator::sort_prevails | ( | vector< Prevail > & | prevails | ) | [private] |
Definition at line 83 of file search/operator.cpp.
void Operator::strip_unimportant_effects | ( | ) |
Definition at line 290 of file preprocess/operator.cpp.
void Operator::write_effect_conds | ( | ostream & | outfile, |
const vector< EffCond > & | conds | ||
) | const |
Definition at line 345 of file preprocess/operator.cpp.
void Operator::write_module_effect | ( | ostream & | outfile, |
const vector< ModuleEffect > & | mod_effs | ||
) | const |
Definition at line 376 of file preprocess/operator.cpp.
void Operator::write_num_effect | ( | ostream & | outfile, |
const vector< NumericalEffect > & | num_effs | ||
) | const |
Definition at line 363 of file preprocess/operator.cpp.
void Operator::write_pre_posts | ( | ostream & | outfile, |
const vector< PrePost > & | pre_posts | ||
) | const |
Definition at line 351 of file preprocess/operator.cpp.
void Operator::write_prevails | ( | ostream & | outfile, |
const vector< Prevail > & | prevails | ||
) | const |
Definition at line 335 of file preprocess/operator.cpp.
bool Operator::writesOnSameVar | ( | const vector< PrePost > & | conds, |
const vector< PrePost > & | effects | ||
) | const [private] |
Definition at line 358 of file search/operator.cpp.
DurationCond Operator::duration_cond [private] |
Definition at line 99 of file preprocess/operator.h.
int Operator::duration_var [private] |
Definition at line 23 of file search/operator.h.
vector<ModuleEffect> Operator::mod_effs_end [private] |
Definition at line 22 of file search/operator.h.
vector<ModuleEffect> Operator::mod_effs_start [private] |
Definition at line 21 of file search/operator.h.
vector<ModuleEffect> Operator::module_effs_end [private] |
Definition at line 97 of file preprocess/operator.h.
vector<ModuleEffect> Operator::module_effs_start [private] |
Definition at line 96 of file preprocess/operator.h.
string Operator::name [private] |
Definition at line 88 of file preprocess/operator.h.
vector<NumericalEffect> Operator::numerical_effs_end [private] |
Definition at line 95 of file preprocess/operator.h.
vector<NumericalEffect> Operator::numerical_effs_start [private] |
Definition at line 94 of file preprocess/operator.h.
vector< PrePost > Operator::pre_post_end [private] |
Definition at line 93 of file preprocess/operator.h.
vector< PrePost > Operator::pre_post_start [private] |
Definition at line 92 of file preprocess/operator.h.
vector< Prevail > Operator::prevail_end [private] |
Definition at line 91 of file preprocess/operator.h.
vector< Prevail > Operator::prevail_overall [private] |
Definition at line 90 of file preprocess/operator.h.
vector< Prevail > Operator::prevail_start [private] |
Definition at line 89 of file preprocess/operator.h.