1 // Copyright (C) 2003  Davis E. King (davis@dlib.net)
2 // License: Boost Software License   See LICENSE.txt for the full license.
3 #ifndef DLIB_MEMORY_MANAGEr_
4 #define DLIB_MEMORY_MANAGEr_
5 
6 #include "memory_manager/memory_manager_kernel_1.h"
7 #include "memory_manager/memory_manager_kernel_2.h"
8 #include "memory_manager/memory_manager_kernel_3.h"
9 
10 
11 
12 namespace dlib
13 {
14 
15     template <
16         typename T
17         >
18     class memory_manager
19     {
memory_manager()20         memory_manager() {}
21 
22 
23     public:
24 
25         //----------- kernels ---------------
26 
27         // kernel_1
28         typedef      memory_manager_kernel_1<T,0>
29                      kernel_1a;
30         typedef      memory_manager_kernel_1<T,10>
31                      kernel_1b;
32         typedef      memory_manager_kernel_1<T,100>
33                      kernel_1c;
34         typedef      memory_manager_kernel_1<T,1000>
35                      kernel_1d;
36         typedef      memory_manager_kernel_1<T,10000>
37                      kernel_1e;
38         typedef      memory_manager_kernel_1<T,100000>
39                      kernel_1f;
40 
41         // kernel_2
42         typedef      memory_manager_kernel_2<T,10>
43                      kernel_2a;
44         typedef      memory_manager_kernel_2<T,100>
45                      kernel_2b;
46         typedef      memory_manager_kernel_2<T,1000>
47                      kernel_2c;
48         typedef      memory_manager_kernel_2<T,10000>
49                      kernel_2d;
50         typedef      memory_manager_kernel_2<T,100000>
51                      kernel_2e;
52 
53 
54         // kernel_3
55         typedef      memory_manager_kernel_3<T,10>
56                      kernel_3a;
57         typedef      memory_manager_kernel_3<T,100>
58                      kernel_3b;
59         typedef      memory_manager_kernel_3<T,1000>
60                      kernel_3c;
61         typedef      memory_manager_kernel_3<T,10000>
62                      kernel_3d;
63         typedef      memory_manager_kernel_3<T,100000>
64                      kernel_3e;
65 
66 
67 
68 
69     };
70 }
71 
72 #endif // DLIB_MEMORY_MANAGEr_
73 
74