1 #ifndef GRAIL_ENTITY_GROUP_H
2 #define GRAIL_ENTITY_GROUP_H
4 #include "Blackboard.hh"
15 std::shared_ptr<AIEntity> entity;
18 EntityEntry(
const std::shared_ptr<AIEntity>& entity,
int relativePriority);
25 EntityGroup(
const std::string& name,
const std::vector<EntityEntry>& entityEntries);
27 const std::string& GetName()
const;
29 void SetId(
size_t id);
32 void AddEntityEntry(
const std::shared_ptr<AIEntity>& entity,
int relativePriority);
33 void RemoveEntityEntry(
const AIEntity& entity);
34 void AddGroupBlackboard(
const std::string& name,
const std::shared_ptr<Blackboard>& blackboard);
36 const std::vector<EntityEntry>& GetEntityEntries()
const;
37 const std::vector<std::pair<std::string, std::shared_ptr<Blackboard>>>& GetGroupBlackboards()
const;
40 size_t id = std::numeric_limits<size_t>::max();
41 std::vector<EntityEntry> entityEntries{};
42 std::vector<std::pair<std::string, std::shared_ptr<Blackboard>>> groupBlackboards{};
The AIEntity class - Defines a basic object which can execute behaviors.
Definition: AIEntity.hh:39
Definition: EntityGroup.h:22
Definition: EntityGroup.h:14