1 #ifndef GRAIL_SYNCHRONIZED_ENTITY_CONTAINER_H 
    2 #define GRAIL_SYNCHRONIZED_ENTITY_CONTAINER_H 
   22         const std::pair<std::shared_ptr<AIEntity>, 
int> operator [](std::size_t index);
 
   24         void SetData(
const std::vector<std::pair<std::shared_ptr<AIEntity>, 
int>>& newData);
 
   26         void ChangeStatus(std::size_t index, Status newStatus);
 
   27         Status GetStatus(std::size_t index);
 
   29         int GetCurrentPriority();
 
   30         void SetNextPriority();
 
   33         std::vector<std::pair<std::shared_ptr<AIEntity>, 
int>> data{};
 
   34         std::atomic<std::size_t> dataDone{};
 
   35         std::atomic<std::size_t> priorityDone{};
 
   38         std::atomic<int> lowestPriority = { std::numeric_limits<int>::max() };
 
   39         std::atomic<int> highestPriority = { std::numeric_limits<int>::min() };
 
   40         std::atomic<int> currentPriority = { 0 };
 
   41         std::map<int, std::atomic<std::size_t>> entitiesPerPriority{};
 
Definition: SynchronizedEntityContainer.h:13