-
Notifications
You must be signed in to change notification settings - Fork 8
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
99 changed files
with
3,922 additions
and
3,135 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,64 @@ | ||
#ifndef DLPLAN_SRC_CORE_ELEMENTS_CONCEPTS_BOT_H_ | ||
#define DLPLAN_SRC_CORE_ELEMENTS_CONCEPTS_BOT_H_ | ||
|
||
#include "../utils.h" | ||
#include "../../../core.h" | ||
|
||
#include <sstream> | ||
#include <memory> | ||
|
||
using namespace std::string_literals; | ||
|
||
|
||
namespace dlplan::utils { | ||
template<typename... Ts> | ||
class ReferenceCountedObjectFactory; | ||
} | ||
|
||
|
||
namespace dlplan::core { | ||
class BotConcept : public Concept { | ||
private: | ||
ConceptDenotation evaluate_impl(const State& state, DenotationsCaches&) const override; | ||
|
||
ConceptDenotations evaluate_impl(const States& states, DenotationsCaches& caches) const override; | ||
|
||
BotConcept(ElementIndex index, std::shared_ptr<VocabularyInfo> vocabulary_info); | ||
|
||
template<typename... Ts> | ||
friend class dlplan::utils::ReferenceCountedObjectFactory; | ||
|
||
public: | ||
bool operator==(const Concept& other) const override; | ||
|
||
size_t hash() const; | ||
|
||
ConceptDenotation evaluate(const State& state) const override; | ||
|
||
int compute_complexity() const override; | ||
|
||
void compute_repr(std::stringstream& out) const override; | ||
|
||
int compute_evaluate_time_score() const override; | ||
}; | ||
|
||
} | ||
|
||
|
||
namespace std { | ||
template<> | ||
struct less<std::shared_ptr<const dlplan::core::BotConcept>> | ||
{ | ||
bool operator()( | ||
const std::shared_ptr<const dlplan::core::BotConcept>& left_concept, | ||
const std::shared_ptr<const dlplan::core::BotConcept>& right_concept) const; | ||
}; | ||
|
||
template<> | ||
struct hash<dlplan::core::BotConcept> | ||
{ | ||
std::size_t operator()(const dlplan::core::BotConcept& concept_) const; | ||
}; | ||
} | ||
|
||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,68 @@ | ||
#ifndef DLPLAN_SRC_CORE_ELEMENTS_CONCEPTS_DIFF_H_ | ||
#define DLPLAN_SRC_CORE_ELEMENTS_CONCEPTS_DIFF_H_ | ||
|
||
#include "../utils.h" | ||
#include "../../../core.h" | ||
|
||
#include <sstream> | ||
#include <memory> | ||
|
||
using namespace std::string_literals; | ||
|
||
|
||
namespace dlplan::utils { | ||
template<typename... Ts> | ||
class ReferenceCountedObjectFactory; | ||
} | ||
|
||
|
||
namespace dlplan::core { | ||
class DiffConcept : public Concept { | ||
private: | ||
const std::shared_ptr<const Concept> m_concept_left; | ||
const std::shared_ptr<const Concept> m_concept_right; | ||
|
||
void compute_result(const ConceptDenotation& left_denot, const ConceptDenotation& right_denot, ConceptDenotation& result) const; | ||
|
||
ConceptDenotation evaluate_impl(const State& state, DenotationsCaches& caches) const override; | ||
|
||
ConceptDenotations evaluate_impl(const States& states, DenotationsCaches& caches) const override; | ||
|
||
DiffConcept(ElementIndex index, std::shared_ptr<VocabularyInfo> vocabulary_info, std::shared_ptr<const Concept> concept_1, std::shared_ptr<const Concept> concept_2); | ||
template<typename... Ts> | ||
friend class dlplan::utils::ReferenceCountedObjectFactory; | ||
|
||
public: | ||
bool operator==(const Concept& other) const override; | ||
|
||
size_t hash() const; | ||
|
||
ConceptDenotation evaluate(const State& state) const override; | ||
|
||
int compute_complexity() const override; | ||
|
||
void compute_repr(std::stringstream& out) const override; | ||
|
||
int compute_evaluate_time_score() const override; | ||
}; | ||
|
||
} | ||
|
||
|
||
namespace std { | ||
template<> | ||
struct less<std::shared_ptr<const dlplan::core::DiffConcept>> | ||
{ | ||
bool operator()( | ||
const std::shared_ptr<const dlplan::core::DiffConcept>& left_concept, | ||
const std::shared_ptr<const dlplan::core::DiffConcept>& right_concept) const; | ||
}; | ||
|
||
template<> | ||
struct hash<dlplan::core::DiffConcept> | ||
{ | ||
std::size_t operator()(const dlplan::core::DiffConcept& concept_) const; | ||
}; | ||
} | ||
|
||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,69 @@ | ||
#ifndef DLPLAN_SRC_CORE_ELEMENTS_CONCEPTS_EQUAL_H_ | ||
#define DLPLAN_SRC_CORE_ELEMENTS_CONCEPTS_EQUAL_H_ | ||
|
||
#include "../utils.h" | ||
#include "../../../core.h" | ||
|
||
#include <sstream> | ||
#include <memory> | ||
|
||
using namespace std::string_literals; | ||
|
||
|
||
namespace dlplan::utils { | ||
template<typename... Ts> | ||
class ReferenceCountedObjectFactory; | ||
} | ||
|
||
|
||
namespace dlplan::core { | ||
class EqualConcept : public Concept { | ||
private: | ||
const std::shared_ptr<const Role> m_role_left; | ||
const std::shared_ptr<const Role> m_role_right; | ||
|
||
void compute_result(const RoleDenotation& left_denot, const RoleDenotation& right_denot, ConceptDenotation& result) const; | ||
|
||
ConceptDenotation evaluate_impl(const State& state, DenotationsCaches& caches) const override; | ||
|
||
ConceptDenotations evaluate_impl(const States& states, DenotationsCaches& caches) const override; | ||
|
||
EqualConcept(ElementIndex index, std::shared_ptr<VocabularyInfo> vocabulary_info, std::shared_ptr<const Role> role_left, std::shared_ptr<const Role> role_right); | ||
|
||
template<typename... Ts> | ||
friend class dlplan::utils::ReferenceCountedObjectFactory; | ||
|
||
public: | ||
bool operator==(const Concept& other) const override; | ||
|
||
size_t hash() const; | ||
|
||
ConceptDenotation evaluate(const State& state) const override; | ||
|
||
int compute_complexity() const override; | ||
|
||
void compute_repr(std::stringstream& out) const override; | ||
|
||
int compute_evaluate_time_score() const override; | ||
}; | ||
|
||
} | ||
|
||
|
||
namespace std { | ||
template<> | ||
struct less<std::shared_ptr<const dlplan::core::EqualConcept>> | ||
{ | ||
bool operator()( | ||
const std::shared_ptr<const dlplan::core::EqualConcept>& left_concept, | ||
const std::shared_ptr<const dlplan::core::EqualConcept>& right_concept) const; | ||
}; | ||
|
||
template<> | ||
struct hash<dlplan::core::EqualConcept> | ||
{ | ||
std::size_t operator()(const dlplan::core::EqualConcept& concept_) const; | ||
}; | ||
} | ||
|
||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,69 @@ | ||
#ifndef DLPLAN_SRC_CORE_ELEMENTS_CONCEPTS_NOT_H_ | ||
#define DLPLAN_SRC_CORE_ELEMENTS_CONCEPTS_NOT_H_ | ||
|
||
#include "../utils.h" | ||
#include "../../../core.h" | ||
|
||
#include <sstream> | ||
#include <memory> | ||
|
||
using namespace std::string_literals; | ||
|
||
|
||
namespace dlplan::utils { | ||
template<typename... Ts> | ||
class ReferenceCountedObjectFactory; | ||
} | ||
|
||
|
||
namespace dlplan::core { | ||
class NotConcept : public Concept { | ||
private: | ||
const std::shared_ptr<const Concept> m_concept; | ||
|
||
void compute_result(const ConceptDenotation& denot, ConceptDenotation& result) const; | ||
|
||
ConceptDenotation evaluate_impl(const State& state, DenotationsCaches& caches) const override; | ||
|
||
ConceptDenotations evaluate_impl(const States& states, DenotationsCaches& caches) const override; | ||
|
||
NotConcept(ElementIndex index, std::shared_ptr<VocabularyInfo> vocabulary_info, std::shared_ptr<const Concept> concept); | ||
|
||
template<typename... Ts> | ||
friend class dlplan::utils::ReferenceCountedObjectFactory; | ||
|
||
public: | ||
bool operator==(const Concept& other) const override; | ||
|
||
size_t hash() const; | ||
|
||
ConceptDenotation evaluate(const State& state) const override; | ||
|
||
int compute_complexity() const override; | ||
|
||
void compute_repr(std::stringstream& out) const override; | ||
|
||
int compute_evaluate_time_score() const override; | ||
}; | ||
|
||
} | ||
|
||
|
||
namespace std { | ||
template<> | ||
struct less<std::shared_ptr<const dlplan::core::NotConcept>> | ||
{ | ||
bool operator()( | ||
const std::shared_ptr<const dlplan::core::NotConcept>& left_concept, | ||
const std::shared_ptr<const dlplan::core::NotConcept>& right_concept) const; | ||
}; | ||
|
||
template<> | ||
struct hash<dlplan::core::NotConcept> | ||
{ | ||
std::size_t operator()(const dlplan::core::NotConcept& concept_) const; | ||
}; | ||
} | ||
|
||
|
||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,69 @@ | ||
#ifndef DLPLAN_SRC_CORE_ELEMENTS_CONCEPTS_ONE_OF_H_ | ||
#define DLPLAN_SRC_CORE_ELEMENTS_CONCEPTS_ONE_OF_H_ | ||
|
||
#include "../utils.h" | ||
#include "../../../core.h" | ||
|
||
|
||
#include <sstream> | ||
#include <memory> | ||
|
||
using namespace std::string_literals; | ||
|
||
|
||
namespace dlplan::utils { | ||
template<typename... Ts> | ||
class ReferenceCountedObjectFactory; | ||
} | ||
|
||
|
||
namespace dlplan::core { | ||
class OneOfConcept : public Concept { | ||
private: | ||
const Constant m_constant; | ||
|
||
void compute_result(const State& state, ConceptDenotation& result) const; | ||
|
||
ConceptDenotation evaluate_impl(const State& state, DenotationsCaches&) const override; | ||
|
||
ConceptDenotations evaluate_impl(const States& states, DenotationsCaches& caches) const override; | ||
|
||
OneOfConcept(ElementIndex index, std::shared_ptr<VocabularyInfo> vocabulary_info, const Constant& constant); | ||
|
||
template<typename... Ts> | ||
friend class dlplan::utils::ReferenceCountedObjectFactory; | ||
|
||
public: | ||
bool operator==(const Concept& other) const override; | ||
|
||
size_t hash() const; | ||
|
||
ConceptDenotation evaluate(const State& state) const override; | ||
|
||
int compute_complexity() const override; | ||
|
||
void compute_repr(std::stringstream& out) const override; | ||
|
||
int compute_evaluate_time_score() const override; | ||
}; | ||
|
||
} | ||
|
||
|
||
namespace std { | ||
template<> | ||
struct less<std::shared_ptr<const dlplan::core::OneOfConcept>> | ||
{ | ||
bool operator()( | ||
const std::shared_ptr<const dlplan::core::OneOfConcept>& left_concept, | ||
const std::shared_ptr<const dlplan::core::OneOfConcept>& right_concept) const; | ||
}; | ||
|
||
template<> | ||
struct hash<dlplan::core::OneOfConcept> | ||
{ | ||
std::size_t operator()(const dlplan::core::OneOfConcept& concept_) const; | ||
}; | ||
} | ||
|
||
#endif |
Oops, something went wrong.