Grail (C++)  1.4.0
A multi-platform, modular, universal engine for embedding advanced AI in games.
IConsiderationProvider.h
1 // Copyright QED Software 2023.
2 
3 #ifndef GRAIL_ICONSIDERATION_PROVIDER_H
4 #define GRAIL_ICONSIDERATION_PROVIDER_H
5 
6 #include <memory>
7 #include "../Consideration.hh"
8 
9 namespace grail
10 {
11 namespace evaluator
12 {
13 namespace helpers
14 {
18  template <typename ContextType>
20  {
21  public:
22  virtual ~IConsiderationProvider() = default;
23 
29  virtual std::shared_ptr<evaluator::Consideration<ContextType>> GetConsiderationByName(
30  const std::string& name) const = 0;
31  };
32 }
33 }
34 }
35 
36 #endif //GRAIL_ICONSIDERATION_PROVIDER_H
grail::evaluator::helpers::IConsiderationProvider
IConsiderationProvider - Helper used for acquiring consideration instance, given its name loaded from...
Definition: IConsiderationProvider.h:19
grail::evaluator::helpers::IConsiderationProvider::GetConsiderationByName
virtual std::shared_ptr< evaluator::Consideration< ContextType > > GetConsiderationByName(const std::string &name) const =0
GetConsiderationByName - returns a Consideration instance based on a string id.