Remove dynamic exceptions
[anna.git] / include / anna / core / Allocator.hpp
1 // ANNA - Anna is Not Nothingness Anymore                                                         //
2 //                                                                                                //
3 // (c) Copyright 2005-2015 Eduardo Ramos Testillano & Francisco Ruiz Rayo                         //
4 //                                                                                                //
5 // See project site at http://redmine.teslayout.com/projects/anna-suite                           //
6 // See accompanying file LICENSE or copy at http://www.teslayout.com/projects/public/anna.LICENSE //
7
8
9 #ifndef anna_core_Allocator_hpp
10 #define anna_core_Allocator_hpp
11
12 namespace anna {
13
14 /**
15    \param T Clase asociada a este ubicador. Debe tener un constructor vacio.
16
17    @see Recycler
18 */
19 template <typename T> class Allocator {
20 public:
21   /**
22      Creacion de una instancia de tipo T.
23      \return Una nueva instancia del tipo T.
24   */
25   static T* create() { return new T; }
26
27   /**
28      Libera los recursos asociados a la instancia recibida como parametro.
29      \param t Instancia que vamos a liberar.
30   */
31   static void destroy(T* t) { delete t; }
32 };
33
34 }
35
36 #endif