Grail (C++)  1.3.0
A multi-platform, modular, universal engine for embedding advanced AI in games.
SelectionOption.hh
1 // Copyright QED Software 2023.
2 
3 #ifndef GRAIL_SELECTION_OPTION_H
4 #define GRAIL_SELECTION_OPTION_H
5 
6 #include "../../GrailEvaluators/Evaluator.hh"
7 
8 #include <random>
9 
10 namespace grail
11 {
12 namespace utility
13 {
14  template <typename ContextType>
20  {
24  ContextType context{};
28  std::shared_ptr<evaluator::Evaluator<ContextType>> evaluator{};
32  std::string evaluatedObjectName{};
36  std::string evaluatedObjectMetadata{};
40  int rank{};
41  };
42 }
43 }
44 
45 #endif //GRAIL_SELECTION_OPTION_H
grail::utility::SelectionOption::evaluatedObjectName
std::string evaluatedObjectName
evaluatedObjectName - Name of the evaluated object.
Definition: SelectionOption.hh:32
grail::utility::SelectionOption::evaluator
std::shared_ptr< evaluator::Evaluator< ContextType > > evaluator
evaluator - Object responsible for evaluation of provided context.
Definition: SelectionOption.hh:28
grail::utility::SelectionOption::context
ContextType context
context - Context to be evaluated.
Definition: SelectionOption.hh:24
grail::utility::SelectionOption
The SelectionOption struct - Helper structure describing one of the options being selected by Selecto...
Definition: SelectionOption.hh:19
grail::utility::SelectionOption::evaluatedObjectMetadata
std::string evaluatedObjectMetadata
evaluatedObjectMetadata - additional data describing the evaluated object
Definition: SelectionOption.hh:36
grail::utility::SelectionOption::rank
int rank
rank - Measure of importance of evaluated object. Only objects with highest available rank may be sel...
Definition: SelectionOption.hh:40