blob: 332ed9b86b2bd76584b7f5faa46273dcd2835c99 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
/** ---------------------------------------------------------------------------
* @file: entitymanager.cpp
*
* Copyright (c) 2017 Yann Herklotz Grave <ymherklotz@gmail.com>
* MIT License, see LICENSE file for more details.
* ----------------------------------------------------------------------------
*/
#include "entitymanager.h"
namespace yage
{
EntityManager::EntityManager(Space *space) : next_handle_(0), space_(space) {}
EntityManager::EntityManager(Space *space, std::size_t n)
: next_handle_(0), space_(space)
{
entities_.reserve(n);
}
unsigned EntityManager::createEntity()
{
return createEntityInstance().getHandle();
}
Entity EntityManager::createEntityInstance()
{
Entity entity(next_handle_++);
entities_.push_back(entity);
return entity;
}
} // namespace yage
|